两个几乎相同的 UITapGestureRecognizers 中的一个比另一个慢得多
One of two practically identical UITapGestureRecognizers acting much slower than the other
我有 2 个几乎相同的点击手势,如下所示:
let minusGesture = UITapGestureRecognizer(target: self, action: Selector("minusSlider:"))
minusGesture.numberOfTapsRequired = 1
downArrowImageView.addGestureRecognizer(minusGesture)
let plusGesture = UITapGestureRecognizer(target: self, action: Selector("plusSlider:"))
plusGesture.numberOfTapsRequired = 1
upArrowImageView.addGestureRecognizer(plusGesture)
它们会触发几乎相同的操作,如下所示:
func minusSlider(sender: UITapGestureRecognizer) {
if mySlider.value > mySlider.minimumValue {
mySlider.value -= 1
}
}
func plusSlider(sender: UITapGestureRecognizer) {
if mySlider.value < mySlider.maximumValue {
mySlider.value += 1
}
}
这是上下文的屏幕截图。基本上,点击相应的箭头会将滑块值向上或向下移动 1。
当我点击向上箭头时,它非常灵敏。我可以快速点击并且它工作正常。但是,当我点击向下箭头时,它触发的动作非常缓慢。它只有在我点击速度非常慢时才有效。如果我以更快的速度点击,它会非常迟钝,每隔几次点击就会工作,其余时间我都会收到此错误:
<_UISystemGestureGateGestureRecognizer: 0x17d3aac0>: Touch: Failed to receive system gesture state notification before next touch
为什么只有向下箭头点击手势而不是向上箭头会出现此错误?除了我在上面发布的内容以及它们位于我视图的相对边缘之外,没有其他东西可以将这两个手势分开。
尝试- requireGestureRecognizerToFail
或- gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
minusGesture 以某种方式被视图中的其他手势覆盖。
我有 2 个几乎相同的点击手势,如下所示:
let minusGesture = UITapGestureRecognizer(target: self, action: Selector("minusSlider:"))
minusGesture.numberOfTapsRequired = 1
downArrowImageView.addGestureRecognizer(minusGesture)
let plusGesture = UITapGestureRecognizer(target: self, action: Selector("plusSlider:"))
plusGesture.numberOfTapsRequired = 1
upArrowImageView.addGestureRecognizer(plusGesture)
它们会触发几乎相同的操作,如下所示:
func minusSlider(sender: UITapGestureRecognizer) {
if mySlider.value > mySlider.minimumValue {
mySlider.value -= 1
}
}
func plusSlider(sender: UITapGestureRecognizer) {
if mySlider.value < mySlider.maximumValue {
mySlider.value += 1
}
}
这是上下文的屏幕截图。基本上,点击相应的箭头会将滑块值向上或向下移动 1。
当我点击向上箭头时,它非常灵敏。我可以快速点击并且它工作正常。但是,当我点击向下箭头时,它触发的动作非常缓慢。它只有在我点击速度非常慢时才有效。如果我以更快的速度点击,它会非常迟钝,每隔几次点击就会工作,其余时间我都会收到此错误:
<_UISystemGestureGateGestureRecognizer: 0x17d3aac0>: Touch: Failed to receive system gesture state notification before next touch
为什么只有向下箭头点击手势而不是向上箭头会出现此错误?除了我在上面发布的内容以及它们位于我视图的相对边缘之外,没有其他东西可以将这两个手势分开。
尝试- requireGestureRecognizerToFail
或- gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
minusGesture 以某种方式被视图中的其他手势覆盖。