Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

General UX question for Android:

Assume a simple view (activity or fragment) hierarchy, like so: A --> B. The transition from A to B is added to Android's back stack.

On screen B, is it best to have a button that takes users back to A, or is letting them use Android's back button sufficient?

share|improve this question

3 Answers 3

up vote 12 down vote accepted

The two aren't interchangeable.

On Android, the native back button is back in history. The back where iOS would normally have it on Android is Up in the hierarchy.

So if you feel the need for an Up button, then add one. But if not, then just leave the native back button.

share|improve this answer
1  
Thanks, the comparison to iOS was quite helpful! I see what you mean by back in history vs up in hierarchy... –  MikeS Dec 12 '12 at 16:11
2  
More on the distinction between Back and Up here: developer.android.com/training/design-navigation/… –  cloudymusic Dec 12 '12 at 16:42

The most recent Android guidelines define clear patterns you should follow, both for ancestral and temporal navigation.

In your simple example, you should just use the default back button, since the ancestral and temporal structures are the same.

For more complex use cases, you should keep in mind that in Android there is a distinction between BACK and UP behavior.

BACK

enter image description here

BACK is what you get when you click the default back button. You don't need to implement it, it's already there. BACK serves a dual purpose:

  1. Historical back when navigating between screens
  2. Undo the last thing that happened. For instance, when you click a form text field, the touch keyboard comes up; hitting back will hide it again. Another example: when an alert Dialog appears, hitting back will cancel it.

It is therefore targeted at temporal navigation.

UP

enter image description here

UP should be used when your navigation hierarchy doesn't necessarily match with the temporal flow. This is very common when a you have several sibling screens in your hierarchy. Suppose an online shop app with an order confirmation screen. From this screen, you can open details for each product in your current order. You navigate from the order confirmation screen, to the first item, than to second, and so on. When you reach the last item, you probably don't want to go back though all the products again until you reach the order details screen. Here you need UP.

This is ancestral navigation and the way to implement is in the action bar, new in 4.0. You can safely ignore the traditional patterns that were used in Android before 4.0, because virtually everyone is adapting to the new ways, starting with all Google apps. For pre-4.0 compatibility, Android provides a support library (you can download it using the SDK manager).

You can find further details on Google's Developer pages, namely http://developer.android.com/training/design-navigation/ancestral-temporal.html and http://developer.android.com/design/patterns/navigation.html.

share|improve this answer
1  
Another good example of this is any screen that can be reached via a notification. If I'm reading a book on my kindle, and I get a text message, after reading the message I can hit "back" to return to the book. If you assume "back" will always take me to, say, the message list, you'd have been mistaken. –  Yamikuronue Dec 13 '12 at 21:13

There's really no exact science here I'm afraid.

Applications differ on this front, even when they are handling the same thing.

Let's look at an example. Look in your Android native text message inbox and open up a message:

enter image description here

Here you have a "Back to messages" button up in the left corner.

However, looking at the Android facebook message view:

enter image description here

They've decided not to add any on screen control to go back, they rely on the user using the dedicated physical back button.

So it's really up to the designer to decide if it's to be added or not. In this occasion there is no right or wrong.

share|improve this answer
    
Good examples, I'm surprised I did not notice this since I use both of those applications. –  MikeS Dec 12 '12 at 16:19
    
@MikeS Yea, I'm a bit surprised as well that a native view would use it. it feels like the native developers should be all about utilizing the Android interactive capabilities. –  AndroidHustle Dec 12 '12 at 16:22
1  
I think that's Samsung's Touchwiz themed Messaging app. Definitely not the native version. Facebook is using a wholly different (and increasingly popular) sort of side navigation. G+ uses the side-nav as well. There's definitely no consistency within the operation system, though, since the guidelines are just guidelines. Clearly each product team in Google has their own opinions on UI implementation. –  Karen Dec 12 '12 at 18:24

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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