【发布时间】:2011-12-30 15:54:57
【问题描述】:
我有以下代码应该让 drawFrame 在每一帧都被调用,但它没有:
- (void)viewDidLoad
{
[super viewDidLoad];
displayLink = [viewReference.window.screen displayLinkWithTarget:(self) selector:@selector(drawFrame)];
[displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
}
- (void) drawFrame:(CADisplayLink*)sender
{
thel.text = @"test";
}
dispayLink 是指向 CADisplayLink 的指针。在我看来,它们连接到一个标签。此视图连接到 viewReference。 self 是 ViewController。声明了drawFrame
- (void) drawFrame:(CADisplayLink*)sender;
在viewDidLoad中测试时可以设置thel.text。
似乎 drawFrame 从未被调用过。该应用程序基于带有自定义故事板文件的 Xcode 4.2 空应用程序模板(我后来添加了它,而不是选择在创建时使用故事板)。除了视图控制器、视图和标签之外,它是空的。
我是新手。当调用 [[NSRunLoop currentRunLoop] run] iOS 5.0 Simulator 根本不显示应用程序。 currentRunLoop 无论如何都应该是默认的主 runLoop。
【问题讨论】:
标签: ios5 nsrunloop cadisplaylink