如何在按钮或UIView上添加多个水龙头?

时间:2015-10-19 16:12:19

标签: ios swift uibutton

我希望只有当用户在一秒钟内按下按钮三次时才能访问我的一个屏幕。例如。如果视图控制器A上有一个按钮,用户应该在该按钮上一秒钟内点击3次以进入视图控制器B. 任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:0)

您需要在自定义视图中添加点按手势识别器。

-(void)handleTapGesture:(UITapGestureRecognizer *)tapGestureRecognizer{

    NSLog(@"3 tapped");
   //add code to present another View Controller

}


-(void)buttonView{
  UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
tapGestureRecognizer.numberOfTapsRequired=3;
[self.customButtonView addGestureRecognizer:tapGestureRecognizer];

  }

<强>夫特:

    func handleTapGesture(tapGestureRecognizer: UITapGestureRecognizer) {
    NSLog("3 tapped")
    //add code to present another View Controller
}



    func buttonView() {
    var tapGestureRecognizer: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "handleTapGesture:")
    tapGestureRecognizer.numberOfTapsRequired = 3
    self.customButtonView.addGestureRecognizer(tapGestureRecognizer)
}

您可以在viewDidAppear

中调用此方法

答案 1 :(得分:0)

按钮未设置为响应多个分接头。你必须自己模拟。

正如其他人所说,你可以创建一个轻拍手势识别器并将其附加到任何视图。对于某些视图,您需要在将它响应之前将userInteractionEnabled标志设置为true。

如果你想要一个按钮来处理双击,你需要安装没有动作的按钮,但是附加了一个2点击手势识别器。