在我的UiView
我有一个subView
叫'容器',应该执行旋转动画,如果用户向上或向下滑动。 基本上,它就像一个轮子,如果用户向上滑动轮子时向下滑动一定程度,同时向上滑动则执行相反的操作。UISwipeGestureRecognizer奇怪的工作
这里是我的viewDidLoad代码:
override func viewDidLoad() {
super.viewDidLoad()
//Swipe Gesture Recognizers Setup
let swipeUp = UISwipeGestureRecognizer(target: self, action: #selector(self.swipeUp(_:)))
swipeUp.direction = .up
swipeUp.delegate = self as? UIGestureRecognizerDelegate
let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(self.swipeDown(_:)))
swipeDown.direction = .down
swipeDown.delegate = self as? UIGestureRecognizerDelegate
view.addGestureRecognizer(swipeDown)
view.addGestureRecognizer(swipeUp)
}
这些都是刷卡的2个功能向上或向下:
func swipeUp(_ sender: UISwipeGestureRecognizer) {
print("Swiped Up")
UIView.animate(withDuration: 1) {
self.borderContainer.transform = CGAffineTransform(rotationAngle: 0)
}
}
func swipeDown(_ sender: UISwipeGestureRecognizer) {
print("Swiped Down")
UIView.animate(withDuration: 1) {
self.borderContainer.transform = CGAffineTransform(rotationAngle: 45)
}}
一切都很正常,consolle正在打印刷卡方向每次执行动作但是(是的,有一个但是!)它只在每个方向上调用相关函数。 也就是说,如果我快速向下滑动,那么我只能向上滑动,...
我希望它能够保持向下滑动,向上或任何时候,用户想要...
我在做什么错? 我看了一下UIGestureRecogniser与因此认为它是不可达一起转动了,但我申请了手势识别器适用于上海华并没有查看我的动画解决方案... Why does the Swipe Gesture Recognizer only work once?
任何帮助是高度不胜感激!
问题是你不明白转换的作品,而不是手势识别。你必须积累角度来实现期望的旋转。对于前,向下滑动2次,你必须旋转90度 –