我試圖獲得並從它的父類的實例,設置屬性。它的工作原理,如果我只是創建對象並獲取或直接設置它們,但如果我把情況下,在一個NSArray它說,它沒有發現:無法訪問實例的屬性中的NSArray
物業的POS'的類型「ID」的對象沒有找到
我有這樣的ViewController稱爲Gameplay.m(UIViewController的),我創建viewDidLoad方法類牆(的UIView)的實例:
walls = [[NSMutableArray alloc] initWithCapacity:10];
for(int i = 0; i < 10; i++) {
Wall *wall = [[Wall alloc] initWithFrame:CGRectMake(0, 0, 480, 320)];
wall.opaque = NO;
wall.backgroundColor = [UIColor clearColor];
[wall setFrame:CGRectMake(levelpos.x + 200 * i, levelpos.y, 200, 200)];
wall.pos = CGPointMake(levelpos.x + 200 * i, levelpos.y); //setting instance attribute works!
[self.view addSubview:wall];
wall.userInteractionEnabled = NO;
[walls addObject:wall];
}
walls[0].pos = CGPointMake(0, 0); //Doesn't work!
類壁的特性「POS」聲明如下在Wall.h中:
@interface Wall : UIView
@property (nonatomic, assign) CGPoint pos;
我在Objective C和OOP方面的經驗都很少,肯定有一些我很想念。
優秀的解釋,謝謝! – Tumtum