我的 Xcode 项目中有两个 for 循环,用于更改 9 个 UIImageViews 中的图像。这些 UIImageViews 中的图像是从服务器下载然后呈现的。
我的 for 循环使用 3 个不同的整数来确定要显示的图像:next、current_photo 和 previous 是整数。
我有两个 UIButtons 控制显示下一组和上一组图像。
当我想显示下一组图像时,我制作并使用了以下 for 循环:
NSArray *imageViews = @[picview_1, picview_2, picview_3, picview_4, picview_5, picview_6, picview_7, picview_8, picview_9];
for (next = current_photo; next < (current_photo+9); next++) {
NSString *next_set = [NSString stringWithFormat:@"%@%i.%@", SERVER_URL, next+1, FORMAT_TYPE];
NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString: next_set]];
UIImage *image = [[UIImage alloc] initWithData:imageData];
[[imageViews objectAtIndex:(next-9)] setImage:image];
}
current_photo = next;
这个 for 循环完美运行,所有 9 个 UIImagesViews 都改变了图像。
但是,当我想在 9 个 UIImageViews 中显示上一组图像时,由于某种原因,以下 for 循环无法正常工作:
NSArray *imageViews = @[picview_1, picview_2, picview_3, picview_4, picview_5, picview_6, picview_7, picview_8, picview_9];
for (previous = current_photo; previous > (previous-9); previous--) {
NSString *next_set = [NSString stringWithFormat:@"%@%i.%@", SERVER_URL, previous+1, FORMAT_TYPE];
NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString: next_set]];
UIImage *image = [[UIImage alloc] initWithData:imageData];
[[imageViews objectAtIndex:(previous-previous)] setImage:image];
}
current_photo = previous;
我的 for 循环有什么问题?请解释。
以下是打开我的应用程序时发生的情况:
以下是按下下一个按钮时发生的情况:
最后,当按下后退按钮时,应用程序就冻结了.....
为什么?怎么了?请帮忙。
谢谢你的时间 :)