如何在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,但我会采取刺的遐..
-
在Interface Builder中将图像的可见性设置为隐藏
-
当您的应用程序启动时,在init fxn中将某个全局variables设置为当前时间
-
在用户界面的主控制循环中,检查该全局variables是否包含3秒以前的时间,如果是,则更改该图像的可见性参数以显示。
最好的我真的可以说没有真正看一看,这是不可能的现在。
祝你好运!