如何在3秒后出现静态图像?

如何在3秒后显示图像?

您可以使用:

[self performSelector: withObject: afterDelay: ] 

我是使用GCD(iOS 4 +)的忠实粉丝,因为您可以使用内嵌块来简化代码。

在你的情况下,你应该设置图像隐藏在界面生成器,然后创build一个IBOutlet连接到你的类的伊娃。

然后,你可以简单地运行viewDidLoad或类似的:

 dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC * 3.0); dispatch_after(delay, dispatch_get_main_queue(), ^(void){ yourImage.hidden = NO; }); 

这假定你从主线程调用了performSelector:withObject:afterDelay,并且你的UIImageView最初是隐藏的。

 //assumes theImageView.hidden = YES [self performSelector:@selector(showImage:) withObject:theImageView afterDelay:yourTimeInterval]; -(void)showImage:(UIImageView*)anImageView { anImageView.hidden = NO; } 

从主线程调用performSelector是很重要的,因为在延迟之后调用的select器将在同一个线程上运行,并且您不想从主线程以外的任何其他位置更新UI。

我有一段时间没有使用XCode,但我会采取刺的遐..

  1. 在Interface Builder中将图像的可见性设置为隐藏

  2. 当您的应用程序启动时,在init fxn中将某个全局variables设置为当前时间

  3. 在用户界面的主控制循环中,检查该全局variables是否包含3秒以前的时间,如果是,则更改该图像的可见性参数以显示。

最好的我真的可以说没有真正看一看,这是不可能的现在。

祝你好运!