2010-07-26 52 views
0

我試圖調用labelWithString功能,我得到以下運行時錯誤:(cocos2d的)「無效的情況下」錯誤與CCLabel初始化

Error: CGContextSetGrayFillColor: invalid context 0x0

Error: CGContextTranslateCTM: invalid context 0x0

Error: CGContextScaleCTM: invalid context 0x0

這是代碼行,我追蹤到:

self.label = [CCLabel labelWithString:@"" fontName:@"Arial" fontSize:32]; 

任何關於此事的幫助將不勝感激。

+0

這與Objective-C語言幾乎沒有任何關係,但與您使用的特定庫有很大關係。您可能會更快得到更好的答案以提供相關信息(例如,這是cocos2D) – Chuck 2010-07-26 23:31:05

+0

對不起,Objective-C領域的新手。 – Joe1man 2010-07-28 22:13:09

回答

0

看起來像是在CG [CoreGraphics]上下文初始化之前調用或者可能來自錯誤的線程?

需要更多的線索。這行代碼在您的應用中出現在哪裏?通話時的回溯是什麼?

+0

好吧,它發生在從CCColorLayer派生的類中的init函數中。這是我在if檢查內部查看自身是否存在的第二件事。我之前做的事情是從sharedDirector獲取winSize。 我在super上調用了initWithColor:ccc4(255,255,255,255),我不確定這與它有什麼關係,但我試圖儘可能多地提供信息。 這些錯誤似乎不影響遊戲,但我確實想找到修復程序。請記住,我對Cocos2D,Objective-C或xCode編譯器沒有太多的經驗。 – Joe1man 2010-07-28 22:33:18

0

嘗試刪除行:

self.label = nil;
或上的dealloc
[label release];

()方法。

這個技巧適用於我,但會導致內存泄漏。 我還在等待這個問題被修復