【发布时间】:2016-08-28 00:53:45
【问题描述】:
我有 5 个不同的 UIImageView,分别命名为 Obstacle 1 到 5。我创建了一个 UIImageView 数组,这样可以更轻松地一次存储和访问它们,因为我很少一次只访问一个。我正在尝试更改图像的坐标,并且坐标正在更改,我已经对其进行了测试以确保。我的问题是,当坐标发生变化时,图像并没有从原来的位置移动。
Obstacles[i].center = CGPointMake(tempNum+(i*125), RandomPosition);
我正在使用这个 ^ 来更改图像的位置。在我尝试将图像放入数组之前,这一切都很好。还有,
Obstacles[i].hidden = YES; Obstacles[i].hidden = NO;
也不再有效。
更新: 声明
UIImageView *Obstacles[5];
IBOutlet UIImageView *Obstacle1;
IBOutlet UIImageView *Obstacle2;
IBOutlet UIImageView *Obstacle3;
IBOutlet UIImageView *Obstacle4;
IBOutlet UIImageView *Obstacle5;
添加到数组
for (int i=0;i<5;i++)
{
Obstacles[i] = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"Obstacle%i", i+1]]];
}
【问题讨论】:
-
发布所有创建 UIImageViews 并将它们放入数组和屏幕上的代码。单看这两行没有错。
-
@user3537411 我添加了你要求的内容
-
尝试创建一个名为 Obstacles 的 NSMutableArray 而不是 UIImageView *Obstacles[5];
-
您可能需要在主线程中执行此操作。
标签: objective-c arrays uiimageview