如何设置移动键盘光标的滑动手势?

时间:2016-06-22 19:52:08

标签: swift

我目前正在制作iOS键盘扩展程序。现在我正在设置它,以便当我在空格键上滑动光标移动但我遇到了一些麻烦。理想情况下,当向左滑动时,光标将向左移动,而右移向右移动。滑动光标时速度应与滑动速度成正比(快速滑动意味着快速移动光标)。

我知道移动光标的代码是:

adjustTextPositionByCharacterOffset(x)的

当x为正时,它向前移动x个字符,当它为负数时,它向后移动x个字符。

我曾尝试使用平移手势和长时间持有手势识别器,但我无法让它给出正确的行为。

1 个答案:

答案 0 :(得分:0)

我能够通过使用平移手势识别器并将其与平移手势返回的最后x值进行比较来解决此问题。

@IBAction func spacePanGesture(sender: UIPanGestureRecognizer) {
        let translation = sender.translationInView(self.view) //Get translation
        if Int(translation.x) > swipeLastTouchX { 
            //If the new translation is higher than the last, move the cursor
            proxy.adjustTextPositionByCharacterOffset(user.swipeSensitivity.rawValue)
        } else if Int(translation.x) <= swipeLastTouchX {
            proxy.adjustTextPositionByCharacterOffset(-user.swipeSensitivity.rawValue)
        }
        swipeLastTouchX = Int(translation.x)
}