Niels Hansen
Niels Hansen

Reputation: 1546

How to create a Controller to simulate the Springboard feature of the iPhone within your own application

I am trying to design a feature in my application for the iPhone that simulates the Springboard feature (Main menu of the iPhone that allows you to view more apps), or the way Weather application works that allows you to flip between views.

Does anyone have any samples of this how I would go about doing this. It's seems very trivial but I am wondering if I am missing something that is already available either as an Apple example or someone who did a tutorial on this.

The image below show how the user would use it. alt text http://www.agilitesoftware.com/SpringboardExample.png

As they slide their finger to the right (or left) the other image would begin to show up. And it would animate smoothly. The faster you swiped your finger the faster it would move to the next view.

Update: The other feature is that it should mimic the same feel when you slide your hand across the display that is snaps to the current view into place. It should not keep sliding across if there is more than 1 view to the direction you swiping your finger.

I've seen other applications use this so that is why I am asking.

Upvotes: 3

Views: 1663

Answers (4)

Dave Shanley
Dave Shanley

Reputation: 11

I would check out Joe Hewitt's code from the Three20 project for this. It provides a nice interface and further refinement of the UIScrollView implemented as TTScrollView and TTScrollViewDelegate, TTScrollViewDataSource.

Upvotes: 0

PCheese
PCheese

Reputation: 3251

I'm writing an app that uses a similar UI. As NilObject recommended, we're using a UIScrollView with pagingEnabled=YES.

You may also be interested in this example code involving just two child views. I'm trying it out now; it's an interesting technique but I've had to write some additional special-casing code for some odd situations that resulted.

There's also another question on this site that asks about creating a grid of icons like the home screen.

Upvotes: 0

Dunk
Dunk

Reputation:

There is a sample app (with code) with exactly this functionality on the iPhone developer site on Apple.com (I believe it's called "PageControl".) - I'd suggest checking it out.

d.

Upvotes: 0

Ecton
Ecton

Reputation: 10722

This is accomplished using the UIScrollView with the pagingEnabled property set to true. Just add each of your views, adjust the contentSize, and it will automatically "page" to the width of the screen across the content.

Upvotes: 4

Related Questions