基本上我有一个自定义UIButton,这个自定义按钮包含子视图。如果我将这些子视图添加到我的UIButton,则按钮会停止响应事件更改。即如果我点击它它就不会响应选择器。我将所有内容设置为userInteractionEnabled
。我也试过添加touchbegan,这是有效的。如果删除这些子视图,UIButton将再次运行。
如何从按钮获取点击事件?
答案 0 :(得分:58)
子视图的userInteractionEnabled
设置为NO
。这里发生的是子视图获取触摸事件而不是UIButton。如果这不起作用,则另一个选项是覆盖自定义UIButton中的hitTest:withEvent:
,以便它始终返回自身,并且不询问其子视图是否应该处理该事件。有关详细信息,请参阅UIView docs。