我一直在尝试使这段代码工作,但无法真正完成最后的部分。
我有2行6个图像视图,
Imageview 1到6和7到12。
首先,我点击26个按钮(A-Z)中的6个按钮,然后使用此代码显示前6个视图中的按钮:
- (void)setImage:(UIImage *)image {
if (imageview1.image == nil) {
[imageview1 setImage:image];
} else if (imageview2.image == nil){
[imageview2 setImage:image];
} else if (imageview3.image == nil){
[imageview3 setImage:image];
} else if (imageview4.image == nil){
[imageview4 setImage:image];
} else if (imageview5.image == nil){
[imageview5 setImage:image];
} else if (imageview6.image == nil){
[imageview6 setImage:image];
}
}
-(IBAction)showA {
UIImage *img = [UIImage imageNamed:@"A.png"];
[self setImage:img];
}
现在,当我点击按钮播放时,我希望图像从视图1到6更改为7 - 12.
我希望有人可以解释我如何做到这一点,我现在尝试了几种方法,但是不能真正让它工作,也许制作变量字符串然后从中得到图像?
希望有人能解释我或者为我提供一些示例代码,谢谢
答案 0 :(得分:0)
喜欢这个吗?
[imageview7 setImage:imageView1.image];
[imageview8 setImage:imageView2.image];
etc...
[imageview1 setImage:nil];
[imageview2 setImage:nil];
etc...
答案 1 :(得分:0)
这不是因为您没有为UIImageView设置图像,因为它没有为图像分配空间。
另一方面,CGImage表示“图像数据”。如果您没有设置图像但UIImageView为您分配UIImage,您可以确定“此图像的数据”将为零(因为没有图像)。
所以你应该尝试一下:
if([imageview1.image CGImage]==nil){[imageview1 setImage:image];}
希望能帮到你