繁体   English   中英

单击按钮时以不同的图像视图显示图像。

[英]show image in different image view when button clicked.

我一直在尝试使此代码正常工作,但无法真正完成最后的部分。

我有2行包含6张图片,

Imageview 1至6和7至12。

首先,在我的26个按钮(AZ)中单击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。

我希望有人可以向我解释如何执行此操作,我现在尝试了几种方法,但实际上不能使其工作,也许制作可变字符串然后从中获取图像?

希望有人可以向我解释或为我提供一些示例代码,谢谢

像这样?

[imageview7 setImage:imageView1.image];
[imageview8 setImage:imageView2.image];
etc...
[imageview1 setImage:nil];
[imageview2 setImage:nil];
etc...

不是因为您没有为UIImageView设置图像,而是因为它没有为图像分配空间。

用另一种方式CGImage表示“图像数据”。 如果您没有设置图像,而是UIImageView为您分配了UIImage,那么您可以确保“此图像的数据”为nil(因为没有图像)。

因此,您应该尝试一下:

if([imageview1.image CGImage]==nil){[imageview1 setImage:image];}

希望对您有帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM