ONLongPressGesture to Touches Moved in subview
Posted
技术标签:
【中文标题】ONLongPressGesture to Touches Moved in subview【英文标题】:UILongPressGesture to Touches Moved in subview 【发布时间】:2013-08-16 13:48:08 【问题描述】:我有一个UIViewController
并添加了一个UILongPressGestureRecognizer
,当它被识别时会在顶部添加一个覆盖UIViewController
的子视图,并将印刷机的坐标传递给子视图并添加印刷机所在的图像。
我现在需要做的是移动用户拇指所在的子视图。我已经在UIView
中实现了touchesMoved
,但是直到您移除手势并按下并重新开始后才会注册?
如何在添加 UIView
后立即开始 touchesBegan 而无需删除并重新开始?
谢谢 -JM
【问题讨论】:
【参考方案1】:为什么不继续使用 UILongPressGesture?
- (IBAction)longPressGestureStateChanged:(UILongPressGestureRecognizer *)sender
switch (sender.state)
case UIGestureRecognizerStatePossible:
case UIGestureRecognizerStateBegan:
/* PUT YOUR IMAGE HERE */
break;
case UIGestureRecognizerStateChanged:
/* MOVE YOUR IMAGE HERE */
self.myImageView.center = [sender locationInView:self.view /* or any of your subviews */];
break;
case UIGestureRecognizerStateCancelled:
case UIGestureRecognizerStateFailed:
case UIGestureRecognizerStateEnded:
/* REMOVE OR PROCESS END OF THIS TOUCH GESTURE */
break;
【讨论】:
以上是关于ONLongPressGesture to Touches Moved in subview的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI 使用 onTapGesture 和 onLongPressGesture 处理按钮/视图以及释放操作
onTapGesture 和 onLongPressGesture 没有响应
在swiftUI中捕获onLongPressGesture的touchDown位置?