My application has a table view with a segmented control in a navigation bar. When the users taps a segment in the segmented control, the application fades the table into it's newly sorted state. The question is whether we should scroll to the top of the table or leave the user at the scroll position they were in before they started the sort, even though they are now looking at completely different data.


This is similar to the problem of resorting paginated search results: if I'm on page 3 and I re-sort, should I move the user back to page 1? The answer is yes: since my context has changed, I no longer know where I am. Also, I'm not likely to say "hey, I'm on page 3 of results sorted by name, but I wonder what page 3 of results sorted by date looks like" - instead, I just want to sort by date now.

Considering the user's motivation likely doesn't change depending on what device they're using, I'd say you should return the user to the top of the table on an iPhone as well. The tricky thing will be how to animate it without causing disorientation. Perhaps you could fade out the table, overlay a loading icon, and then fade the table back in once sorting is complete. This state transition will help make clear what has changed, as opposed to suddenly redrawing the screen or scrolling the screen back to the top. It would probably be beneficial to user test the transition to find the least disorienting one.

Have you checked the iPhone Human Interface Guidelines for mentions of this situation?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.