【发布时间】:2012-01-21 04:10:34
【问题描述】:
我希望在用户触摸按钮 (UIControlEventTouchUpInside) 时收到信号。如何将观察者添加到 UIButton?
【问题讨论】:
标签: ios objective-c uibutton observer-pattern uicontrolevents
我希望在用户触摸按钮 (UIControlEventTouchUpInside) 时收到信号。如何将观察者添加到 UIButton?
【问题讨论】:
标签: ios objective-c uibutton observer-pattern uicontrolevents
查看UIControl的文档。
[myButton addTarget:self
action:@selector(touch:)
forControlEvents:UIControlEventTouchUpInside];
此方法适用于继承自 UIControl 的任何内容(包括但不限于 UIButtons :)
【讨论】:
// add target and action
[myButton addTarget:self
action:@selector(buttonClicked:)
forControlEvents:UIControlEventTouchUpInside];
其中目标是添加或实现 UIButton 的类。如果为 addTarget 设置 nil,则操作将通过响应者链,直到找到响应 buttonClicked: 选择器的响应者。 buttonClicked:选择器的实现如下:
-(void)buttonClicked:(id)sender
{
// do stuff here
}
【讨论】: