Chapter 16. Enhancing the User Experience

In This Chapter

  • Getting back to where you once belonged

  • Avoiding bankruptcy because of exorbitant roaming charges

"Keep the customer satisfied" is my mantra. If that means constantly refining an application design, so be it. In thinking about my iPhone Travel411 design, two things struck me as essential if I really wanted to make this an application that really focuses on the user. The first is part of the Human Interface Guidelines, so it's not really something I can claim credit for; the second is something that flowed straight out of the nature of my design.

In this chapter, I show how I incorporated elements into my design that directly addressed issues relating to an enhanced user experience.

Saving and Restoring State

When the user taps the Home button, the iPhone OS terminates your application and returns to the Home screen. The applicationWillTerminate: method is called and your application is terminated — no ifs, ands, or buts. That means you have to save any unsaved data — as well as the current state of your application — if you want to restore the application to its previous state the next time the user launches it. Now, in situations like this one, you have to use common sense to decide what state really means. Generally you wouldn't need to restore the application to where the user last stopped in a scrollable list for example. For purposes of explanation I chose to save the last category view that the user selected in the main table ...

Get iPhone™ Application Development for Dummies® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.