How best to navigate a "long" listbox [table]

first off, this app is currently running under Swift and tvOS (AppleTV). on this screen there are two tables (ie. the two columns to the right). The first column is rather short and for the most part fits the screen.
However the SECOND (far right table has at the moment 75 entries and is expected to grow to maybe double that). And while it can be filtered by items in Column 1, it can be tedious to scroll thru all the entries.

And since this is tvOS, that scrolling is done with a touchpad remote most of the time.

Any ideas on a better way to handle this? Adding a “search box” is an option, but again tvOS, so that paradighm is NOT the same as it would be under iOS or macOS

tvOS has search in apps
AppleTV+ and so many others have that option

Yes. and as I mentioned the paradighm is way different. It requires a dedicated SCREEN (like an Alertbox does), so therefore it cannot be directly interactive with the screen shown above

so it would look something like this

I was hoping for ideas the would not require leaving the main screen

How about some type of grid where you have square boxes instead of a pure list?

Best way is an alphabet down the right side. On selection of a letter, the list should jump to the first item with that letter.

I can’t find an image for AppleTV, but like:

That idea works great for iOS/macOS, but not so much with tvOS due to the fact you have to “navigate” to the button before it can be pressed, but that is an idea I’d considered

What I am going to experiment with, is showing a Letter Grid to the left when “search” is selected, for some reason Apple (default) changed from a grid
Similar to this…

dont forget that if you use the tvOS search you can just say what you’re searching for to the Siri Remotes :slight_smile:

Plex does that on the search screen with a keyboard. That seems to be native.

And I just found a pic with the the alphabet.

Both would be usefull. :slight_smile:

voice sound like it might be a “fun” feature… and I don’t think that screen shot is tvOS :slight_smile:

I’ll take a pic with my phone when I can.

It’s a good interface… When a letter is selected, the listbox scrolls to the first item beginning with that letter.

I wonder if thats a standard tvOS ui feature or something Plesk did custom
Either way it seems quite useful

Worst case is that it’s 26 or less buttons that scroll the listbox… :slight_smile:

For now I’ve decided to put this feature on the back burner… I did an analysis of how many games started with which letters

the distrution of the 1st letter of game titles was very inconsistent… some letters only had 1 title, while 2 had >9, and a bunch of letters had no titles at all


… then don’t show that letter …

Trees to the rescue! You could build a Trie from your game list for fast string matching. I just tested this method using 8th as it supports some useful tree data structures out of the box and it works great!

A Google search finds Swift implementations for a Trie data sructure that you could use.

that would again be fine for iOS or macOS, but not for tvOS

Why a Trie would not work with tvOS?

You gave me an idea of implementing a help program with graphical user interface for the 8th. I use a Trie to store the complete wordlist of the 8th. That gives me a really fast word search with autocomplete for free. Help descriptions come from the 8th help database.

The manner of navigation in tvOS is very restricted. While I’m sure it is possible to navigate a treeview type structure… it would be much more difficult and time consuming (I believe) than simple scrolling the list…


yeah at best its up down left & right

but storing the data as a trie doesnt mean you have to show it that way

I think he was meaning to use the trie as data storage structure

I’ve used tries for exactly that purpose and they can be stunningly fast