iOS有一个EventTouchDown时更改UIButton的Alpha

当有一个EventTouchDown的时候,我想要改变一个UIButton的alpha值。 我希望有一种方法可以做到类似于下面的代码:

[self.myButton setImage:<#(UIImage *)#> forState:UIControlEventTouchDown]; 

有没有办法做这样的事情“setAlpha”?

谢谢!!!

你可以inheritance你的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]; } } 

如果你需要做一些select,你可以在这里做同样的事情