首页 > 解决方案 > 如何在我的视图控制器上检测跨多个视图的触摸事件?

问题描述

在我的 viewController 中,我以编程方式创建了几个正方形作为子视图。把它想象成一个棋盘。

我想实现一种方法,当用户触摸它时,它在子视图上执行一些操作(例如,更改单个正方形的背景颜色)。

我尝试使用 UITapGestureRecognizer 失败 - 我从 Apple 文档中读到它一次仅适用于一个视图。

你有什么建议吗?

非常感谢

标签: swiftxcodeuitapgesturerecognizergesture-recognition

解决方案


您可以继承 UIWindow 类并处理其中的所有事件,- (void)sendEvent:(UIEvent *)event例如向所有视图发送通知或以其他方式进行通信。检查以下存储库以获取更多信息: https ://github.com/mwinoto/TapDetectingWindow


推荐阅读