I'm building a game, part of whose UI consists of user's scrolling around over subviews positioned in an XY grid. I want to explore ways of using focus to constrain or direct the user's motion as s/he moves around the grid in order to indicate which movements are allowable for a particular context.
As a simple example -- and I don't know if this would actually be an acceptable UI experience in terms of using the remote, but that's one of the things I want to explore -- if the user scrolls to the end of a row, I'd like to be able to force a focus change to the first subview in the next row down, much as if the user were reading text, moving left-to-right across the page and then back to the start of the following line. To be realistic in this example, I suppose we'd also want to ignore focus changes that moved directly downward, but the effects of turning that capability on and off is something else I'd like to explore.
How would I implement this focus-wise? I understand how to override preferredFocusedView and didUpdateFocusInContext but I can't quite see how to put these together programmatically to be able to do what I want.
This one answered my question: Not a good idea UI-wise.