I am currently designing an android mobile application and trying to stick to the google material design guidelines as much as possible. But the guidelines seem to be not that clear when it comes to loading or processing.

An example is let's say I'm doing a money transfer; My current approach is to replace the whole content of the fragment there with a loading spinner and then transition to a success page afterwards. The flow in that is that the user can press back while the processing widget is showing.

Should I go with a full screen overlay? (I dont like how that looks at all). Should I just disable the buttons on the toolbar? Or is there an even better way of handling things ?

2 Answers 2


Your current approach sounds fine, except that if the user presses the back button or navigates elsewhere while the app continues to work in the background, and the user is doing something important like sending money, the user needs some way to see the status of the background work. A notification would probably be a good choice. Add the notification when beginning the background work; dismiss it automatically once the work completes and the user sees the result.

If the user navigates away, keep the notification until the user sees the result. If the user is doing something less important, don't bother with the notification. A good example of this pattern is the Facebook photo/video upload function. Facebook adds the notification as soon as you begin the upload.


As a matter of fact, Material has some very specific guidelines with examples for processing actions. Be sure to check them because your approach is not the one to follow if you want to stick to Material Guidelines, but there are some different examples that might help you depending on the nature of your process.

This being said, remember that Material is just a set of guidelines, and some of them are arguable to say the least. A good example of very arguable UX is adding a contact in Android. You add it and there's no confirm or add button, the contact is added by simply doing a change, you just need to go back, just as in your proposed flow.

enter image description here

Many people goes crazy trying to add the contact because they can't find a way to do it, or they add many trash contacts, contacts with partial names or phones and so on, so imagine if you do this for a money transaction.... Personally, I'd suggest you go other route. But whatever path you choose, be sure to test it extensively.

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.