2011-08-12 47 views
5

好吧,所以我已經完全被這個編譯器錯誤困擾了好幾個小時,問題是我所做的所有Google搜索都說它應該按照我的方式工作!我正在爲iPhone遊戲開發編寫一本書教程,而由於隨機編譯器錯誤,我陷入了第二章。CADisplayLink向前聲明錯誤

注意:我目前正在運行和在了XCode 4.1與iOS 5測試版

這裏測試的聲明:

在頭文件:

@interface GameController : NSObject 
{ 
    CADisplayLink *displayLink; 
} 

@end 

在.m文件

- (void)startGame { 
    displayLink = [displayLinkWithTarget:self selector:@selector(update:)]; // THROWS ERROR 
    [displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; // THROWS ERROR 
} 

- (void)update:(CADisplayLink *)sender { 
    // TODO: actually do something.. 
} 

這兩種扔錯誤:類消息的Receiver'CADisplayLink'是一個前向聲明

但是,所有在線的帖子都具有完全相同的行。錯誤類型是'自動引用計數問題'。

任何幫助,非常感謝!

回答

12

您需要在源文件頂部的#import <QuartzCore/QuartzCore.h>,並鏈接QuartzCore框架,如果你還沒有這樣做。

+0

非常感謝! – Chad

3

您是否已經將QuartzCore框架添加到您的項目以及相關的導入到這個類中?

CADisplayLink來自該框架。