I am building an app where user can send a message to his contacts. User must be able to set some settings on this message (like color, font size,...). I was thinking of using 3 screens:

  1. enters the message
  2. changes message settings - font color, background color,... (includes live preview)
  3. chooses the recipient and adds some recipient-specific settings, then sends

I wanted to use navigation controller (with "Next" buttons, positioned bottom right ), but I am not sure it is the correct choice here - for two reasons:

  • in second and third step I already use table views with disclosure indicators (>) which use nav. controller for "diving" into settings and getting back
  • this is linear flow (wizard), not tree-like

The flow still seems intuitive enough to me, but I am wondering... Is there a better way for this usage pattern?

  • Welcome to UX on StackExchange! Since this is a UX forum we don't know iOS names for their UI patterns by heart. That is more a developer thing. I assume you meant this (bit.ly/LXQ9Gi) is the Navigation Controller? Jun 25, 2012 at 22:37
  • 2
    Concerning your question, what do you mean by "sets the message"? Is it a preview or does it only include one? Also remember that many other message posting flows start with choosing the person to send it to (think email, SMS, IM, etc.) Jun 25, 2012 at 22:40
  • If you have screenshots, or could show us a mockup, of your existing workflow it would be very helpful. You can't embed images directly in to your question yet, but if you link to them someone with higher rep can change that into an embedded image. Jun 25, 2012 at 23:34
  • First of all, thanks to both of you for the comments! @JeroenEijkhof: yes, this is Navigation Controller. Since this question is very iOS specific, I thought it would be appropriate to name the specific components. Your link is spot-on. About 2 - I have updated the question.
    – johndodo
    Jun 26, 2012 at 7:25
  • @Myrrdin Emrys: I'll try to put something together, but I am not sure I am allowed to be more specific... need to check. Still, what I am basically asking is: is Navigation Controller suitable for wizard pattern? I hope it makes sense even without wireframe... :)
    – johndodo
    Jun 26, 2012 at 7:26

2 Answers 2


I find the pattern you are using for your flow to be a bit confusing. Perhaps i don't understand the context of how the message is going to be displayed, but as a user is generating a message, they like the ability to have control and the freedom of a "redo" mindset. By making this a linear flow, it seems the user can only edit setting of the message as a next step?

Think of the instance if you would like to make a word green, then you realized that word conveys the wrong message when green so you would like to change the language.

As well a choosing the recipient as the last step seems odd as well. The "who" is most likely the reason why the user is generating a message to one of their contacts.

It is a common convention to state who the message is for during the beginning stages of a message.(sending a text, composing and email, writing a letter, etc..)

Perhaps: 1. choose the contact(s) 2. allow text and settings at hand in realtime (wysiwyg-ish)

Would love to see some screenshots or mockups!

  • chester, thanks! The reason for putting recepient at the end is that the "message" is not just text... It is supposed to be a funny thing one composes out of short video (step 1) + some effects (second step). We want users to engage in creating, even before they decide they want to send anything. It is still meant primarily as a message though, so that's why there is a third step (and not just a button "send to a friend"). Does that make sense? Sorry for not telling all these details upfront, I just figured they weren't that important for the question. You proved me wrong. :)
    – johndodo
    Jun 27, 2012 at 7:58
  • And first part of your answer leads to another possible solution... I can just put the settings / effects on the first page and lose the second page altogether. Nice, thanks! Back to drawing board then. :)
    – johndodo
    Jun 27, 2012 at 8:05
  • No problem! Sometimes those details can change the context completely. As long as it s clear to the user how the app works and with supporting details to illustrate that the contact or the "who" is meant to be the after thought to the message. But Yes, does not seem like you need a second page in total.
    – Kyle Mirro
    Jun 27, 2012 at 13:02

Yes, it is the right choice. The navigation controller does not know anything like a "next" button. The navigation controller only stacks up the screens the user has been visiting and provides a "back" functionality by default.

You can use pushViewController:animated and popViewControllerAnimated methods to push any view controller you like and the pop it back off when going back.

If you use iOS 5+, you can use the storyboards in the interface builder, which are pretty handy for an easy setup of views like yours.

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.