动态生成iPhone / iPad应用程序起始图像的好方法

时间:2010-04-21 16:19:07

标签: iphone iphone-sdk-3.0 ipad

我正在自学iPhone开发,我发现iPhone / iPad应用程序的一个方面是运行应用程序时显示的起始图像。我希望我的起始图像在应用程序启动时显示有关用户的一些基本信息,但该信息必须首先由用户在首次运行时收集。这告诉我,我需要在用户输入信息后动态生成起始图像,或者我需要在静态起始图像上放置某种标签以实现此目的。应用程序首次启动时,在用户输入信息之前,开始图像可以是任何内容,也可以不显示任何内容,我并不担心这一点。

所以,我的问题是......

  1. 启动应用时,您可以将控件(如标签)放在开始图像的顶部吗?
  2. 如果没有,在第一次启动应用程序并收集用户信息后,动态生成开始图像的好方法是什么?
  3. 如果无法更改此起始图像(感谢kristopher!),我可以在开始图像关闭后立即显示动态生成的图像一段时间(~3秒)吗?我甚至根本不得不使用起始图像吗?
  4. 非常感谢您的帮助!我现在要开始研究这个问题。

3 个答案:

答案 0 :(得分:4)

要回答3号,是的,您需要一个开始图像。它应该看起来像您的动态起始图像,但没有动态信息。

要在启动后短暂显示动态信息,只需在任何视图控制器首先出现之前使用模态视图控制器(下面称为viewController):

SplashScreenController *splashScreen = [[SplashScreenController alloc] initWithNibName:@"SplashScreenController" bundle:nil];
[viewController presentModalViewController splashScreenController animated:NO];
[splashScreenController release];

[viewController performSelector:@selector(dismissModalViewControllerAnimated:) withObject:YES afterDelay:3];

显然,您需要创建一个名为SplashScreenController的UIViewController子类和xib文件。

答案 1 :(得分:2)

应用无法更改其初始图片。这些图像文件以及应用程序包中的其他文件被操作系统视为只读。

如果您没有启动图像,那么用户只会看到黑色屏幕一两秒钟(或更多,取决于您的应用程序的大小)。有一个启动图像是个好主意。

您可以在应用开始投放后显示您想要的任何内容。

答案 2 :(得分:1)

我做了类似于你想要完成的事情,除了我不显示用户信息。如果你想看看我做了什么,请查看我的应用How Long Can You Tap It(免费)。正如克里斯托弗所提到的那样,第一张图片并没有多变。只要应用程序加载,它就会显示。然后,图像将消失并显示您的初始viewController,这将是您想要的任何内容。在我的应用程序中,它只是初始图像的相同图像,但不是说LOADING而是显示文本告诉您点击屏幕开始播放。如果您不想依赖用户点击屏幕继续,您可以执行Frank所说的并在X秒内解除它。如果您想要比Frank提供的代码更多的代码,请告诉我们。