0

我无法得到这段代码,它只是让图像UIButton工作。错误消息一直说 tempButt 是 aUIView并且它不会响应调用imageForState:
有人可以告诉我为什么以及如何正确地做到这一点吗?
最终,我想将我得到的这张图片与另一张图片进行比较,看看它们是否相同。

UIButton* tempButt = (UIButton*)[self.view viewWithTag:tagNum];
UIImage* tempImage = [tempButt imageForState:UIControlStateNormal]; 
4

2 回答 2

0

您确定您已将按钮作为子视图添加到 self.view(在 xib 或代码中)并将其标签属性设置为 tagNum 持有的值吗?只需检查一次..

我想你可能在上面提到的一种情况下出错了..

如果它碰巧是一个按钮,那么我确信这些调用中的任何一个都应该让你得到按钮图像..

一个按钮有两个属性 image 和 backgorundImage..

用于获取图像使用

 tempButt.currentImage  (or) [tempButt  imageForState:UIControlStateNormal];

用于获取 backgroundImage 使用

 tempButt.currentBackgroundImage

请注意,imageForState 方法仅在您将图像设置为按钮图像时才有效。

希望这可以帮助!!

于 2012-07-11T01:45:50.180 回答
0

确保您已将图像设置为背景图像或图像,如果您将图像设置为背景图像试试这个

UIImage * img = [btn backgroundImageForState:UIControlStateNormal];

您可以将图像设置为 contant 并将另一个图像设置为背景 此代码将获取背景图像

于 2013-03-01T10:13:11.047 回答