I'm designing for mobile. I have a bottom navbar with 4 tabs. Each tab has a main home screen for that area of the app.

Let's say Profile, Alarm, History, Chat.

Now some of these tabs have multiple screens and sub-screens inside each of them. History may have a sub-screen called "Sound list".

Now if a user goes to the History>SoundList screen, and navigates away to another tab, say Profile. If they click the History tab again, should it go to the the History(home) screen or the History>SoundList screen?

Should it save where the user last left off, or take them to the main home screen for that tab again?

6 Answers 6


What is the user expecting?

For this problem you are facing you might want to check how browsers implement the back button and scroll top position.

When you are on a site, you scroll down and click a link that redirects you somewhere else (in the same tab), if you click the back browser button the browser will position you in the same scroll position you were. Is your sub-screen simply some scroll away or are there taps that took the user away the main category page?

Now in your case you might want to think what is the user exactly expecting.

  • Is he coming back to category A after finding some information he needed from category B? In this case it might be a good idea to take him back to the exact point he was.
  • Is he coming back to category A from category B without any relation between the two? In this case take him to the category page. It might be more frustrating for the user going back to the main category page from a sub-screen (common scenario) than arriving there and redirecting his steps to the sub-screen (uncommon scenario).

So, it depends. Doing user research might really help to find out which is your case.

On a side note: I am used to Android, and there is always a back button in the OS. So I might consider a different action clicking the OS back button and clicking directly on the menu. See this question about the difference between Up vs Back button.


That's a really tricky question to answer in abstraction. The best way to find out might be to present a prototype - or the real thing - to users and ask them; If you clicked this tab A, then changed the view state, then clicked tab B, then clicked tab A again, what would you expect to see?

Are customisations a 'thing' in your app? You might allow the user to configure their own behaviour preferences. Also - if you are going to make the system 'remember' where a user left off, how long for? If it's perpetual, will the lack of a home confuse them if they log back in in say a month from now?


This is one of those cases where I'd say it's more a case of choosing the "least bad" option rather than the "good" option. Whichever way you go, there will be some users and/or some situations where it might be better if you had done the opposite. However, think of the case where someone is switching tabs relatively quickly - let's say referring to something on 1 tab because it's relevant to what they're doing on another tab. To reset positions as you change tabs would be very annoying - and I think this overrides the convenience of resetting tabs for when that would actually be more appropriate.

If you are building a native app, then the default behaviour on iOS would be to save where the user was. So iOS users will be comfortable with that approach.

On Android there really is no standard (at least for native apps) as the tabs at the bottom has really been discouraged on Android as basically a "lazy" adaptation of iOS. Generally the hamburger menu and/or tabs at the top of the screen are used instead. Google recently blessed the row of tabs at the bottom but I think it will stay relatively discouraged due to the potential to accidentally tap the OS soft-keys (like back).

In addition, be aware that things like phone calls or switching to a different app perhaps in response to a push notification etc. would be likely to trigger the same code flow - i.e. reset tabs.

Note on both iOS and Android the OS can kill apps pretty much whenever the OS wants to manage resources on the device. So, even though users may want their tab to be preserved, they will generally realise that sometimes things are reset - and it's more likely the longer the time is between app visits and the more other things you do on your device in between.

PS - if you want to continue researching this, the correct terminology might help in searches. It's called a "tab bar" on iOS, and an "action bar" on Android.


Depends on the situation but more than likely preserving the state is the best route. Not doing so will introduce confusion and possibly frustration.

Weigh the efficiencies of swapping them back to the main page on each tab vs. preserving the state of the tab. Keep in mind that swapping them back to the main page is you making a deliberate decision. It's typically preferred to give people freedom to use the app how they prefer.

As Nigel noted, when they kill the app the state will be lost, but I find this reasonable as they are choosing to kill it.


In the article Bye, Bye Burger Sebastian Lindemann pointed:

With a bottom bar the app needs to remember what a user did in a section, making the behavior very different to a burger menu. As the purpose of the visible section arrangement is to allow a fast and frequent switching between them, the click path in a section needs to be stored so that a user can go back to a task easily. In contrast, for apps with a burger navigation, the state is not stored and it’s a fresh start on the first view hierarchy level whenever a user comes back to a section.

It has sense for me: fast and frequent task switching with bottom navigation requires fast task restoration.


Looking at the answers here, and your question, I would say make it an option for your end user! Cover both cases so that everyone can be happy! How do you choose the default is up to you. I would ask a bunch of people in your target audience to see what would make more people happier. If you have a way to get reports on how many people use the option you could switch the option/default out in a latter version.

My initial instinct is to make the home screen default, and give them a "Open App Where I Left Off"/"Open to Last Page" option.

If your asking about tab navigation, and moving between them, each tab should remember where the end user was in any given session and reset upon app close. Unless, of course, the option to remember where they left off is enabled.

Hope this helps!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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