我有一个简单的应用程序,按钮,UIImageView和NSTimer。 定时器每5秒反复启动一次以更新ImageView,同时该按钮仅停止定时器并切换到另一个View。NSTimer冻结应用程序,直到它再次被触发?
问题是,当我按下按钮时,几秒钟内没有任何反应(直到定时器再次启动)。
有没有办法导致按钮停止计时器,并在任何给定的时间而不是在计时器的间隔之间完成其工作?
该按钮在InterfaceBuilder中定义并连接到代码中的函数。
NSTimer代码:(我已经尝试&,但没有将它添加到RunLoop中)。
updateTimer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(updateImageViews) userInfo:nil repeats:YES];
NSRunLoop* runLoop = [NSRunLoop currentRunLoop];
[[NSRunLoop currentRunLoop] addTimer:updateTimer forMode:NSDefaultRunLoopMode];
[runLoop run];
谢谢!
你使用无效来停止计时器...?你可以把一些代码...? – 2010-04-13 10:04:34
我已经添加了计时器代码, 和是的,我使用invalidate来停止按下按钮时被调用的函数中的定时器 thanks – 2010-04-13 16:11:13
当你说“没有任何事情发生”时,你的意思是没有出现下一个视图?定时器触发时视图是否出现?不是真的明确问题是什么,想看什么以及看到什么? – TechZen 2010-04-13 18:53:19