如何在您自己的应用程序中创建一个Controller来模拟iPhone的Springboard功能

时间:2009-02-18 21:32:18

标签: cocoa-touch

我正在尝试在我的iPhone应用程序中设计一个模拟Springboard功能的功能(iPhone的主菜单,允许您查看更多应用程序),或者Weather应用程序的工作方式,允许您在视图之间切换。

有没有人有这样的样本我将如何做到这一点。这看起来非常微不足道,但我想知道我是否遗漏了一些已经可以作为Apple示例或者就此进行过教程的人。

下图显示了用户如何使用它。 alt text http://www.agilitesoftware.com/SpringboardExample.png

当他们将手指向右(或向左)滑动时,另一张图像将开始出现。它会很顺利地动画。滑动手指的速度越快,移动到下一个视图的速度就越快。

更新:另一个功能是,当您将手滑过显示器并将其锁定到当前视图时,它应该模仿相同的感觉。如果您滑动手指的方向有多于1个视图,则不应该保持滑动。

我见过其他应用程序使用这个就是我要问的原因。

4 个答案:

答案 0 :(得分:4)

这是使用UIScrollView并将pagingEnabled属性设置为true来完成的。只需添加您的每个视图,调整contentSize,它就会自动“翻页”到整个内容的屏幕宽度。

答案 1 :(得分:0)

Apple.com上的iPhone开发者网站上有一个示例应用程序(带代码),具有完全相同的功能(我相信它叫做“PageControl”。) - 我建议你查看它。

d

答案 2 :(得分:0)

我正在编写一个使用类似UI的应用。正如NilObject建议的那样,我们使用UIScrollView pagingEnabled=YES

您可能也对this example code involving just two child views感兴趣。我现在正在尝试;这是一个有趣的技术,但我不得不为一些奇怪的情况编写一些额外的特殊套管代码。

此网站上还有another question,询问如何创建主屏幕等图标网格。

答案 3 :(得分:0)

我会从Three20 project查看Joe Hewitt的代码。它提供了一个很好的界面,并进一步完善了作为TTScrollView和TTScrollViewDelegate,TTScrollViewDataSource实现的UIScrollView。