0
我一直拉着我的頭髮出來,我似乎無法解決這個簡單的問題了。Objective-C:我的init值沒有設置
我有延伸CCNode類,這裏的標題:
#import "CCNode.h"
@interface ContentPane : CCNode
@property (nonatomic, strong) CCNode * _rockPath1;
@property (nonatomic, strong) CCNode * _rockPath2;
@property (nonatomic, strong) CCNode *_secondPath1;
@property (nonatomic, strong) CCNode *_secondPath2;
@property (nonatomic) int map;
-(void)generatePane;
@end
我試圖讓_rockPath1,_rockPath2等能見度隱藏初始化這個類。但是,我在init中設置的值沒有得到尊重。這裏是我的init,在我的init中,我只是試圖設置._rockPath1的位置,因爲我知道這行代碼的作品,因爲我在我的程序中的其他地方,它工作正常。
- (id)init {
self = [super init];
self.map = 0x11111111;
CCLOG(@"WHAT");
//_rockPath1.position = ccp(90,90);
self._rockPath1.position = ccp(90,90);
return self;
}
我的類初始化後,_rockPath1沒有我爲它設置的位置,但它仍然有SpriteBuilder定義的值。奇怪的是,地圖設置爲正確的值,但位置不是。
我想你不應該用ccnode擴展這個類,如果你在這個ContentPane中創建實例的話。而且在初始化期間,你需要在分配位置之前爲_ rockpath1分配內存。 – bllakjakk 2014-09-20 06:24:21