我正试图在所有四个方向上检测AppleWatch上的滑动。然而,我不清楚如何为插入故事板中的WKSwipeGestureRecognizer的方向分配许多值。我尝试过:
swiper.direction = [.right , .left , .up , .down]
编译器非常接受,与使用按位|不同,但是,使用此配置,函数:
@IBAction func swipe(_ sender: Any) {
switch swiper.direction {
case WKSwipeGestureRecognizerDirection.right:
print("Swiped right")
case WKSwipeGestureRecognizerDirection.down:
print("Swiped down")
case WKSwipeGestureRecognizerDirection.left:
print("Swiped left")
case WKSwipeGestureRecognizerDirection.up:
print("Swiped up")
default:
break
}
}
很少被调用,当它是swiper.direction总是.right。
Apple非常神秘: https://developer.apple.com/reference/watchkit/wkswipegesturerecognizer/1650828-direction 说:
“此属性的默认值是正确的。您可以指定更多 比一个方向跟踪多个方向的滑动 相同的手势识别器。“
没有透露如何。
答案 0 :(得分:0)
无论如何,完全无视Apple的说法,在故事板中放置四个WKSwipeGestureRecognizer,每个都有不同的方向和目标。
答案 1 :(得分:0)
1)从右侧的“工具”框中选择WKSwipeGestureRecognizer
2)从属性检查器中,选中“Delays touches started”并选择您需要的“Swipe”类型
-
3) Ctrl +将IBAction拖到你的viewController并实现函数