【问题标题】:Use addTarget:action:forControlEvents: method to change a UIImage?使用 addTarget:action:forControlEvents: 方法更改 UIImage?
【发布时间】:2011-06-05 06:29:44
【问题描述】:
我打算在我的页面上添加一个“空白”星形图标,当用户点击它时,它将变为一个“实心”星形。
我尝试设置UIImage如下图:
UIImage *hotIcon = [UIImage imageNamed:@"blank_star.png"];
谁能告诉我如何使用addTarget:action:forControlEvents: 方法?我什至可以在UIImage 上使用这种方法吗?还是我一定要使用UIButton?
【问题讨论】:
标签:
objective-c
cocoa-touch
ios
uiimage
uicontrol
【解决方案1】:
您可以添加一种方法来对按钮进行操作,如下所示:
[aButton addTarget:self action:@selector(myMethod:) forControlEvents:UIControlEventTouchUpInside];
【解决方案2】:
"addTarget: action:" 和 "removeTarget: action:" 适用于所有 UIControls(如 UIButton)。你无法直接将它用于 UIImages。
有多种方法可以满足您的要求。 (声明一个自定义 UIControl 并实现你想要的方式)。但最简单的方法是将 UIButton 与所需的图像(和背景图像)一起使用。