【发布时间】:2017-01-11 13:50:30
【问题描述】:
我有一个链接到通讯员@IBAction 的 UIButton。这样的按钮正好位于两个相邻视图的中间
|--------------|----------------|
| view1 | button | view2 |
|--------------|----------------|
UIButton 是 view1 的子视图(很重要!),但它位于中间,使用 'x' 位置为负值的框架。
两个视图都有一个 UITapGestureRecognizer,用来触发一些东西。
问题如下:如果我点击按钮的左侧(view1 上的那个),则会触发 IBAction,而如果我点击按钮的右侧部分(view2 上的那个),则 IBAction 是未触发,而 view2 上的 UIGestureRecognizer 是。
我知道这可能是因为按钮属于view1而不是view2,但是有没有办法检测到呢?
我尝试了建议的方法
override func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
/*detect if you tapped button or view*/
}
它被正确调用,但总是说点击的视图是view2。
谢谢
【问题讨论】:
标签: ios button uigesturerecognizer