1

感谢您抽出宝贵时间阅读此消息。我希望你能回答我的问题。

我想在现有项目中添加一个启动屏幕,类似于 tap tap revenge 3。它基本上显示一个屏幕 2 秒,然后另一个屏幕 2 秒,然后它立即显示菜单。

谁能告诉我如何才能创造出这样的东西?谢谢 。

4

2 回答 2

3

显然,对启动画面的看法各不相同。但是,做 TTR 所做的事情非常简单。为您的第一个屏幕设置一个 Default.png 文件。然后,让您在启动时加载的顶视图控制器成为一个简单的图像,这就是您的第二个屏幕。

诀窍是尽可能多地卸载您的启动代码,并将其推迟到初始启动之后。在启动和 applicationDidFinishLaunching: 结束之间完成的所有操作都将在您的 Default.png 屏幕显示时完成。使用 -performSelector:withObject:afterDelay: 推迟“昂贵”的调用,以便您可以快速进入第二个初始屏幕。

于 2009-10-12T00:46:23.187 回答
0

它非常简单。我刚刚完成了这项工作,它的工作方式与点击复仇加载屏幕的工作方式完全相同。

要在显示主菜单之前依次加载 2 个不同的屏幕,请执行此操作。1) 创建一个 nib 文件,放置一个覆盖整个屏幕的 UIButton,然后将其连接到插座。2) 在 vi​​ewDidLoad 方法中,我确保 UIButton 的图像背景属性设置为 image1,然后在 1.5 秒后使用计时器将其更改为 image2。

现在,点击复仇加载屏幕允许您通过点击屏幕来跳过这两个加载屏幕。所以基本上创建一个函数,以便当用户点击屏幕(本质上是一个覆盖屏幕宽度和高度的巨大按钮)时,它会将 UIButtons 图像背景属性更改为 image2。如果再次单击,它将为主菜单加载一个新的 nib 文件。瞧,工作完成了。

所以无论哪种方式,如果您不点击屏幕(uibutton),那么由于计时器,应用程序将显示 image1,然后在 1.5 秒后自动将 UIButton 的图像更改为 image2,然后再过 1.5 秒(总共 3 秒)应用程序将加载 mainMenuView nib 文件。

显然,当您单击按钮后,它应该更改为 image2,但是当调用相同的函数时,如何使图像更改为 image2:好吧,我有一个计数器,当调用该函数时,该计数器将递增 1。所以在启动时该值将是 0。所以当用户点击按钮快速浏览加载屏幕时,该值将变为 1,图像将变为 image2。

当用户再次单击按钮以从 image2 跳转到加载屏幕时,将调用相同的函数来更改图像,但会检查计数器是否为值 1,如果是则它已经在 image2 上然后只需加载屏幕。就这么简单。它工作得很好。如果有更简单的方法可以做到这一点,请告诉我。谢谢

PK

于 2010-09-19T10:15:45.463 回答