我有一个 UIView ViewA,我们正在添加到一个 scrollView ViewB。ViewA 有其他子视图(其中之一是 ViewC)。现在,我们在 ViewA 上有了触摸方法(开始、结束等)。ViewC 有一个点击识别器。我如何通过触摸?
现在,ViewA 中的 touches 方法正在被击中。手势识别器不工作。
任何人都可以提出任何建议吗?
谢谢。阿山
我有一个 UIView ViewA,我们正在添加到一个 scrollView ViewB。ViewA 有其他子视图(其中之一是 ViewC)。现在,我们在 ViewA 上有了触摸方法(开始、结束等)。ViewC 有一个点击识别器。我如何通过触摸?
现在,ViewA 中的 touches 方法正在被击中。手势识别器不工作。
任何人都可以提出任何建议吗?
谢谢。阿山
您可以使一个UIGestureRecognizer (A) 依赖于另一个 (B) - 这样一个 UIGestureRecognizer (A) 就无法在第二个失败的情况下工作。
在您的情况下,您可以将UIGestureRecognizer (A) 添加到顶视图,并将另一个 (B) 添加到其下方的视图中,这需要识别其他一些用户交互。底部视图中的一个 (B) 无法在另一个 (A) 出现故障的情况下开始工作。
有关可能满足您需求的更多UIGestureRecognizer行为,您可以阅读requireGestureRecognizerToFail
此处并熟悉超级有用的类。
我会建议您使用适合您想要做的事情的 UIGestureRecognizer,而不是直接实现触摸方法。根据 Apple 文档,您不应该再使用触摸方法。
如果您想将手势从一个视图传递到另一个视图,为什么不在第二个视图的 .h 文件中声明一个方法,并在触发手势时从第一个视图调用它?
如果 viewB 是 viewA 的子视图,则更简单,因为您将在 viewA 中引用 vewB。
希望这有帮助!