iphone - 使用 touchesBegin/Moved/Ended 只影响单个 uiimageview 在屏幕上的移动,尽管有多点触摸

标签 iphone ios cocoa-touch uiimageview touchesbegan

我在屏幕上有多个可通过触摸拖动的图像,目前我正在使用 touchesBegin:touchesMoved:touchesEnded: 来使这些图像可移动。我的目标是让用户能够通过拖动在屏幕上选择一个图像,但注意到如果使用多个手指,则可以拖动多个项目,从而选择多个项目。我想知道是否有一种方法只允许在多个手指触摸屏幕的情况下拖动一个图像。

作为替代方案,我当然可以提出一个条件和一个警报 View ,当它检测到多个拖动时通知用户只能拖动一个图像,但我想知道是否有更优雅的解决方案,我可以在其中强加一些直接从触摸级别控制用户可以做什么和不可以做什么。

谢谢!

最佳答案

相反,您可以将 UIPanGestureRecognizer 添加到您的主视图并将属性 maximumNumberOfTouches 设置为 1。并在 UIPanGestureRecognizer 的选择器方法内处理 imageViews 的拖动。

关于iphone - 使用 touchesBegin/Moved/Ended 只影响单个 uiimageview 在屏幕上的移动,尽管有多点触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18456862/

相关文章:

ios - UIButton setAutoresizingMask 无法以编程方式工作

ios - 我在 `init` 方法和 `viewDidLoad` 方法中设置了什么?

iphone - 如何从 UITableView 设置 scrollView 委托(delegate)?

ios - 对许多包含数字的 NSArray 进行排序

ios - UIBezierPath 视觉错误?

iphone - 使用 iPhone X 屏幕截图中的图像时 GPUImage2 返回 false

iphone - MPMoviePlayerController 仅在 iOS 5 中显示黑屏

iphone - 当我在运行的 iPhone 应用程序中第二次从 sqlite 数据库中检索时,我的应用程序崩溃了

ios - MBProgressHUD 更新进度

ios - IOS 中 Google map 上的路线