Xcode noob在这里。任何人都可以指导我如何制作列表,如下所示在for循环?如果有可能吗?让它使用这些列表,但它需要花费太多时间,并可能因重复而导致错误。
_monkey1.center = CGPointMake(_monkey1.center.x, _monkey1.center.y);
_monkey2.center = CGPointMake(_monkey2.center.x, _monkey2.center.y);
_monkey3.center = CGPointMake(_monkey3.center.x, _monkey3.center.y);
_monkey4.center = CGPointMake(_monkey4.center.x, _monkey4.center.y);
_monkey5.center = CGPointMake(_monkey5.center.x, _monkey5.center.y);
etc.
我已经开始:
for (int k = 1; k < 20; k++){
// prep?
[[_monkeys objectAtIndex: k] setCenter: ....
}
有可能这样做吗?任何其他建议将不胜感激。
猴子是UIImageViews。感谢。
答案 0 :(得分:1)
NSArray *monkies = @[ _monkey1, _monkey2, _monkey3, _monkey4, _monkey5 ];
for (UIImageView *monkey in monkies) {
monkey.center = CGPointMake(monkey.center.x, monkey.center.y);
}
(注意,我假设这些对象的类型为Monkey
,可能不正确)。
答案 1 :(得分:0)
还有另一种方法可以实现这一目标:
for (int k = 1; k < 20; k++) {
YourMonkeyClass *monkey = [self valueForKey:[NSString stringWithFormat:@"monkey%ld", k]];
monkey.center = CGPointMake(monkey.center.x, monkey.center.y);
}
有关valueForKey:
的更多详情,请参阅Key-Value Coding and Observing。