Playing with radial menus on the iPhone by Paulo Fierro

After watching the Microsoft Courier videos on Engadget yesterday I started thinking about radial menus again. There are a few examples out there for ActionScript but I wanted to figure it out in Cocoa Touch.

So this morning I spent a couple hours throwing some code together. Basically this was the idea:

  1. Listen for touches
  2. On touch-start, start a timer to show the menu
  3. On touch-end, kill the timer. The user will have lifted their finger so we don't want to show the menu
  4. If we're showing the menu, start a timer to remove it once its shown
  5. If a button is tapped or the timer is triggered remove the menu
  6. If a button is tapped, do something

At the end I tossed in some animation to make it a little nicer visually. A quick vid of it is below and you can grab the Xcode project here. Its obviously not perfect, but shows shows the general idea.