【发布时间】:2012-01-02 14:52:15
【问题描述】:
当 UIButton 上有 EventTouchDown 时,我想更改它的 alpha。我希望有一种类似于以下代码的方法:
[self.myButton setImage:<#(UIImage *)#> forState:UIControlEventTouchDown];
有没有办法用“setAlpha”做这样的事情?
谢谢!!!
【问题讨论】:
标签: objective-c ios xcode uikit
当 UIButton 上有 EventTouchDown 时,我想更改它的 alpha。我希望有一种类似于以下代码的方法:
[self.myButton setImage:<#(UIImage *)#> forState:UIControlEventTouchDown];
有没有办法用“setAlpha”做这样的事情?
谢谢!!!
【问题讨论】:
标签: objective-c ios xcode uikit
您可以将您的 UIButton 子类化(不推荐,但由于您最终所做的只是覆盖 setHighlighted 或 setSelected,因此在这里应该不是什么大问题)并覆盖点击方法来处理您的 alpha 更改。
// In your UIButton's subclass
- (void)setHighlighted:(BOOL)highlighted {
[super setHighlighted:highlighted];
if(self.highlighted) {
[self setAlpha:0.5];
}
else {
[self setAlpha:1.0];
}
}
如果你需要在选中的地方做某事,你可以和这里一样
【讨论】: