swift - 如何在我的视图控制器上检测跨多个视图的触摸事件?
问题描述
在我的 viewController 中,我以编程方式创建了几个正方形作为子视图。把它想象成一个棋盘。
我想实现一种方法,当用户触摸它时,它在子视图上执行一些操作(例如,更改单个正方形的背景颜色)。
我尝试使用 UITapGestureRecognizer 失败 - 我从 Apple 文档中读到它一次仅适用于一个视图。
你有什么建议吗?
非常感谢
解决方案
您可以继承 UIWindow 类并处理其中的所有事件,- (void)sendEvent:(UIEvent *)event
例如向所有视图发送通知或以其他方式进行通信。检查以下存储库以获取更多信息:
https ://github.com/mwinoto/TapDetectingWindow
推荐阅读
- c++ - 与 SDK 10.15 一起使用时,MacOS 10.15 SDK 不会将 LC_VERSION_MIN_MACOSX 添加到二进制文件中
- reactjs - 组件丢失之前的状态
- tfs - 如何解决这个问题?,您是否缺少程序集参考
- python - 错误:gcm_channel_status_request.cc(145)] GCM 通道请求失败消息在带有 python 项目的终端中显示
- uwp - 如何从 CoreWindow 获取 ICoreWindowInterop
- javascript - Node.js - 在确认框中单击确定时如何删除条目
- spring - Spring Reactive Mongo Router Handler中的UpdateById方法
- api - 使用 Blogger API 插入的一些帖子未显示在主页上
- excel - excel长嵌套if
- ruby - 在Ruby中将mac地址转换为IPv6链接本地地址