1.NSDefaultRunLoopMode 这是大多数操做中使用的模式。 2.NSConnectionReplyMode 该模式用来监控NSConnection对象。你一般 不须要在你的代码中使用该模式。 3.NSModalPanelRunLoopMode Cocoa使用该模式来标识modalpanel(模 态面板)的事件。 4.NSEventTracking(UITrackingRunLoopMode) Cocoa使用该模式来处 理用户界面相关的事件。 5.NSRunLoopCommonModes 这是一组可配置的通用模式。将input sources与该模式关联则同时也将input sources与该组中的其它模式进行了 关联。对于Cocoa应用,该模式缺省的包含了default,modal以及event tracking模式。
一个常见的问题就是,主线程中一个NSTimer添加在default mode中, 当界面上有一些scroll view的滚动频繁发生致使run loop运行在UItraking mode中, 从而这个timer没能如指望那般的运行。 因此,咱们就能够把这个timer加到NSRunLoopCommonModes中来解决(iOS中)。 定时器是让程序定时执行某一个方法:html
/*
ios
* scheduledTimerWithTimeInterval: 间隔时间(秒)
* target: 所要应用定时器的对象
* selector: 调用的方法
* userInfo: 所要传递的参数
* repeats: 是否重复调用
*/
[NSTimer scheduledTimerWithTimeInterval:1
target:self selector:@selector(timerAction:) userInfo:@"参数" repeats:YES];objective-c
能够点击下列网址详细了解....(可是现阶段因为还有一些知识点是在后面才讲到,没有一些知识的铺垫,看这些文章的时候,有些吃力,因此看到有些不理解的时候,暂时不要太钻)框架
NSRunLoop参考资料2.net