定时器NSTimer放在主线程中如何解决与其他UI控件的冲突

在ios应用中  当定时器NSTimer在主线程中,可能会与其他UI控件产生冲突,比如广告栏的自动滚动,比如在当前页面中有一个textView,滚动时可能会导致定时器停止,这是为什么呢? 因为同在主线程中,系统会优先处理用户的拖动,那么就造成定时器的卡住 停止现象,怎么做呢? 需要把定时器NSTimer对象 放到 RunLoop循环中,就可以解决这个问题。

[[NSRunLoop mainRunLoop]addTimer: self.timer toMode:NSRunLoopCommomModes];

就可以解决 定时器与其他UI控件 同时进行,而不会冲突。

 

posted on 2016-04-18 23:56  大圣ios博客  阅读(2172)  评论(0编辑  收藏  举报