2

我想要的是:

我希望在按下按钮时进度条填充到 100%。例如:按钮被按下并且进度条只有在被按下时才持续填充,直到 2 秒过去,并且在 2 秒后进度条达到 100%。

我做了什么:

我尝试使用长按手势识别器和点击手势识别器模拟 whilePressing TouchEvent,但没有得到令人满意的结果。主要问题是,我不能在同一个按钮上混合轻按手势和长按手势。如果我能做到这一点,我至少可以得到 touchDown (Tap) 和 touchUp (Long Press) 事件并尝试用它来模拟我想要的行为。

有没有人有建议,或者当前给定的框架根本不可能?

4

1 回答 1

3

想出了一个令人满意的解决方法。我将 aWKLongPresssGestureRecognizer与我的按钮一起使用,该按钮应该具有所需的交互。我已将Min DurationAttributes Inspector 中的 设置为0. 并将以下代码段用作我的识别器的 IBAction:

@IBAction func pressAndHold(_ sender: AnyObject) {
    guard let sender = sender as? WKLongPressGestureRecognizer else {
        return
    }
    if sender.state == WKGestureRecognizerState.began {
        print("Touch down")
    } else if sender.state == WKGestureRecognizerState.ended {
        print("Touch up")
    }
}
于 2016-10-20T08:47:10.520 回答