NSObject(Circle)の一部であるUIImageViewsを割り当てて初期化しようとしていますが、これらのCirclesの配列があります。ただし、XCodeは、UIImageViewsの割り当てと初期化を好みません。
コードは次のとおりです。
//allocate and set circleArray
circleArray = [[NSMutableArray alloc] init];
for (int i = 0; i < 16; i++) {
[circleArray addObject:[Circle alloc]];
[[circleArray objectAtIndex:i] setTouched:0];
[[circleArray objectAtIndex:i] imageView] = [[UIImageView alloc] init]; //Problem Here: "Expression is not assignable"
}
//some code setting up the columns and beats shown below
for (int i = 0; i < 16; i++) {
[[[circleArray objectAtIndex:i] imageView] setFrame:CGRectMake([[circleArray objectAtIndex:i] column]*80-75, [[circleArray objectAtIndex:i] beat]*80+5, 70, 70)];
[self.view addSubview:[[circleArray objectAtIndex:i] imageView]];
if ([[circleArray objectAtIndex:i] beatMod] == 0) {
[[[circleArray objectAtIndex:i] imageView] setImage:redCircle];
}
else if ([[circleArray objectAtIndex:i] beatMod] == 0.5) {
[[[circleArray objectAtIndex:i] imageView] setImage:blueCircle];
}
else if ([[circleArray objectAtIndex:i] beatMod] == 0.25 || [[circleArray objectAtIndex:i] beatMod] == 0.75) {
[[[circleArray objectAtIndex:i] imageView] setImage:yellowCircle];
}
else {
[[[circleArray objectAtIndex:i] imageView] setImage:greenCircle];
}
}
エラーのある行を削除すると、画面に何も表示されません。UIImageViewを割り当てて初期化して表示する必要がありますか、それともNSObjectを割り当てて初期化するときにすでに実行されていますか?これを修正するにはどうすればよいですか?