An app I'm working on requires the user to enter their address which is then stored on a 3rd party system. The 3rd party has a predefined list of countries and states so when I send off the address I need to send an id for those fields.

When I've used this system on the web I've had the user pick their country first using a select box and then had a second select box where they pick their state (this list is updated when the user changes their country).

What I'm wondering is what's the best way to get that information from a user in an iPhone app?

The two options I've considered so far are:

Does anyone have any advice as to which of those is the best approach or if there's a better way I've overlooked?

  • I'm a little confused. On iOS a Select box does turn into a scrollable list to select from.
    – DA01
    Jan 13, 2013 at 22:08
  • Probably should have worded my question a little more clearly, the app I'm building is native but the task it performs is something I've done before in html so essentially I was trying to see what the best native approach would be.
    – pogo
    Jan 15, 2013 at 13:19

1 Answer 1


Due to small device screen HTML-like form isn't a best way to get user input.

If it's a registration form or something, you should probably rethink the whole thing and make it suited for small devices and touch input by doing the following:

  1. Minimize number of items user should fill. Keep only required fields, or even move some of the required fields to profile or something so user will be able to fill these fields later. Let user fill as little data as it possible because small devices has input limitations (small size, no full size keyboard, etc).

  2. Rethink the rest of the form and make it a wizard of one or several screens. Split your form into logical groups and put the inputs of every group on an individual screen (username and password, location settings, etc).

So, I think, that it's better to use option 2 (show all of the countries on a single screen and guide user to choose a state for US then), but instead of placing a button I will suggest to split your form and use a number of steps (screens).

  • thanks for the advice, I think I'll be going for option 2 as well. My plan is already to try and split this stuff up as much as possible so user will only be prompted to enter an address when the app needs them to.
    – pogo
    Jan 15, 2013 at 13:18

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.