【问题标题】:How to disable Swipe Gesture recognizer when a button is pressed?按下按钮时如何禁用滑动手势识别器?
【发布时间】:2017-05-07 07:13:44
【问题描述】:

我这样设置识别器:

    @IBAction func changeSeq(_ recognizer: UISwipeGestureRecognizer) {

    if (recognizer.direction == UISwipeGestureRecognizerDirection.left)
    {
    print ("nice")
    }
}

我需要在按下开始按钮时禁用它,并在触发暂停时再次启用它。我不想禁用所有用户交互。如何具体处理滑动?

【问题讨论】:

  • 手势识别器有一个可以设置的enabled属性
  • 你能举个例子吗?
  • @AntonPlatonov 您是否尝试过自己找到解决方案?

标签: ios swift3 uiswipegesturerecognizer


【解决方案1】:

如果您使用滑动手势代理,请根据按钮按下情况更改为 nilself

【讨论】:

  • 这可行,但如 Dan 的评论中所述,在手势识别器上设置 enabled 属性更简洁、更直观。
【解决方案2】:

在您的开始按钮IBAction 代码中,将手势识别器的enabled 属性设置为false,并在暂停按钮的IBAction 中设置enabled = true

这比将代理设置为零更干净。

【讨论】:

  • 我必须重新提出来。我似乎无法使用此“启用”属性。我是否绝对需要为每次滑动设置委托来执行此操作?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-28
  • 2011-06-17
  • 2014-07-20
  • 1970-01-01
相关资源
最近更新 更多