管理自定义UIControl上的事件

Bea*_*eav 4 events uicontrol ios

我将UIControl子类化为包含不同标准控件的自定义控件.

对于此讨论,我们假设我的自定义UIControl仅包含UIButton.

我想要实现的是,单击自定义UIControl中的任何位置都会为该自定义UIControl生成单击事件.标准行为是UIButton将处理和使用(即不转发)click事件.

由于不鼓励对UIButton进行子类化,我无法真正找到实现这一目标的简单方法.

有什么建议?

Bea*_*eav 12

我提出了一个简单的解决方案,不需要UIButton的子类化.

在为UIButton的TouchUpInside控件事件定义的action方法中,我添加了以下代码行:

[self sendActionsForControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)

这会导致在单击自定义UIControl中的任何位置时调用TouchUpInside控件事件.