假设我有 5 个 UIImageView,分别命名为 image1 image2 image3 image4 和 image5。
我有 5 个按钮,它们的标签值设置为覆盖它们的相应图像,所以 1 - 5。
如果按下按钮 1,我会像这样得到标签值
NSNumber buttonNumber = [sender tag];
然后我想对相应的图像(image1)执行一些方法。但我想对所有按钮使用相同的方法。
所以我的问题是,在检索到标签后,我如何识别相应的图像(名称后有相同的数字)。到目前为止,我的解决方案有点啰嗦,是使用开关:
UIImageView *image;
switch (buttonTag) {
case 1:
image = imageOverButton1;
break;
case 2:
image = imageOverButton2;
break;
default:
break;
// etc
}
但这似乎不是很优雅。如果它是一个字符串,我当然可以使用
stringWithFormat:@"imageOverButton%i", buttonTag
那么对象有没有等价的操作呢?
我知道我也可以将按钮的背景图像设置为我想要的图像并从发件人那里提取 imageData 但出于各种原因我宁愿以上述方式进行操作。我想我也可以将 UIImageViews 添加到数组中并使用标签提取相关对象。
谢谢!:D
迈克尔