我为我的应用程序创建了一个自定义UIButton(UIButton子类)。在此按钮的实现中,如何在按下时更改背景颜色? (它应该在郁闷时恢复到正常背景。我目前正在使用Core Graphics绘制渐变背景。)
我在drawRect:
尝试了分支(检查self.selected
和self.highlighted
,但没有发生变化,因为在触摸事件中没有调用drawRect
。
欢迎任何建议或代码示例。
答案 0 :(得分:15)
尝试在触摸事件中调用[self setNeedsRedraw]
。
Asker根据这个答案和下面的评论提供了解决方案。
<强>解决方案强>
用于:
[self addTarget:self action:@selector(buttonPressed) forControlEvents:UIControlEventTouchDown];
[self addTarget:self action:@selector(buttonDepressed) forControlEvents:UIControlEventTouchUpInside | UIControlEventTouchUpOutside | UIControlEventTouchCancel];
选择器是执行后台更改的自定义函数。