我试图在视图控制器更改中做出某种延迟。我需要能够点击下一页的按钮,但也不能立即更改。也就是说,以某种方式给它一个计时器或延迟。有人能指出我正确的方向还是给我一点帮助?
答案 0 :(得分:4)
[self performSelector:@selector(selector) withObject:self afterDelay:delay];
可用于延迟方法的执行。我也听说过sleep()函数也被抛出,但它会锁定你所在的线程。
NSTimer也有一个有用的便利方法:
[NSTimer scheduledTimerWithTimeInterval:2.0
target:self
selector:@selector(selector)
userInfo:nil
repeats:NO];
特别是,此计时器将在2秒后调用名为“selector”的方法,而不会重复。
编辑:在您的情况下,您可能希望使用performSelector:withObject:afterDelay:
,如此:
[self.button addTarget:self action:@selector(myMethod) forControlEvents:UIControlEventTouchUpInside];
然后在myMethod中,执行延迟,如下所示:
[self performSelector:@selector(myTransition) withObject:self afterDelay:4.00];