touchesBegan:withEvent:在点击UIButton时不会被调用

时间:2013-07-31 09:40:44

标签: ios objective-c uikit uitouch

我想要实现的是列匹配类型功能。我在右列上有三个按钮,在左列上有三个按钮,上面有一些信息。我想通过拖动手指从右侧的一个按钮到左侧的任何按钮绘制路径。

我会使用UIBezierPath路径来绘制路径,为此肯定需要一个起点和终点。

现在问题是我如何通过点按按钮来触发touchesBegantouchesMovedtouchesEnded方法,以便我可以获得起点和终点。

我正在考虑的另一个选择是使用不可见的UIView覆盖所有按钮,并以某种方式检查此覆盖视图所触摸的点是否位于任何按钮帧中。

BTW我也可以用简单的UIImageView替换这些按钮。我添加按钮只是为了获得触摸点。

任何帮助。

2 个答案:

答案 0 :(得分:5)

创建UIButton的子类并添加此...

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{  
    [super touchesBegan:touches withEvent:event];
    [self.nextResponder touchesBegan:touches withEvent:event]; 
}

这会让你触摸按钮。

答案 1 :(得分:2)

取消选中UIButton的已启用用户互动复选框。您将在该按钮上接听touchesbegan方法。