2010-10-13 86 views

回答

5

与许多其他GUI系统一样,您为iPhone应用程序编写的代码会运行到由系统提供的循环中。当编写一个没有GUI的程序时,习惯上有一个main()函数或类似的函数。在iPhone上你并没有这个,因为它是由系统提供的,它会调用事件循环。你所提供的只是回应事件。

该循环负责将硬件事件视为触及等,调用您的代码和API代码来绘制窗口,一些内存管理等等。这就是为什么你永远不必自己为这些事件投票。

1

我觉得这个苹果文档将说明了一点:

事件循环是一个简单的运行循环:调度工作,协调接收从连接到运行各种输入源事件的事件处理循环循环。每个线程都可以访问运行循环。除了主线程外,运行循环必须由代码手动配置和运行。在Cocoa应用程序中,主线程的运行循环(主事件循环)由应用程序对象自动运行。主要事件循环的区别在于其主要输入源从用户操作生成的操作系统接收事件,例如点击视图或使用键盘输入文本。

https://developer.apple.com/library/ios/documentation/General/Conceptual/Devpedia-CocoaApp/MainEventLoop.html