ios - UIView touchesCancelled 未调用
问题描述
我有一个UIView
未接收的子类touchesCancelled
。如果触摸下来并拖到屏幕外(或touchesCancelled
应调用的任何其他实例),touchesEnded
则调用而不是touchesCancelled
. 它永远不会被调用!
我有:
self.clipsToBounds = true
self.isExclusiveTouch = true
self.isMultipleTouchEnabled = false
其他兄弟观点似乎得到了他们的touchesCancelled
召唤。我也没有附加手势识别器。
解决方案
来自苹果文档https://developer.apple.com/documentation/uikit/uiresponder/1621116-touchescancelled ...
UIKit 在收到需要取消触摸序列的系统中断时调用此方法。中断是导致应用程序变为非活动状态或导致处理触摸事件的视图从其窗口中删除的任何事情。
因此,当触摸在视图外移动/拖动时不会被touchesCancelled
调用。
推荐阅读
- python - 在视线上投射速度 - 已编辑
- javascript - 元素类型无效,使用 Flatlist 时
- multithreading - 在多个读者从 Rust 中的不同线程读取时写入
- javascript - 如何动态选择flex的属性来设置值?
- java - Android RecyclerView 项目点击不起作用 - MVVM
- scala - 如何从 spark scala 调用 db2 数据库中的存储过程
- python - 从数据框的代码中存储分类
- javascript - 循环 - 从数组中删除元素
- php - PHP搜索页面返回错误但搜索功能有效
- html - 如何在 html、css 中插入全屏大背景图片?