繁体   English   中英

检测手掌触摸/释放 iphone 屏幕

[英]Detect palm touching/releasing the iphone screen

实现一种“遇险呼叫”按钮,其工作方式如下:

  1. 用户启动应用程序并用手掌覆盖屏幕
  2. 一段时间过去,用户可能会在此期间引入额外的触摸或删除一些现有的(但不是全部),触摸的位置/形状可能会改变
  3. 当用户松开手(即移除最后一次触摸)时,应用程序会发出求救信号

基本上,应用程序应该注册两个事件:(1)触摸屏幕(2)释放所有触摸

我正在尝试使用 touchesBegan/touchesEnded 方法,这些方法适用于小区域触摸(指尖),但在全掌或什至只有手掌边缘的触摸屏上,当手仍在屏幕上时,会立即触发 touchesCancelled。 显然,之后在手动释放时不会发出其他事件。

我尝试将 UIWindow 和 UIApplication 子类化并在其中覆盖 sendEvent ,但没有得到其他信息 - 大面积触摸正在触发触摸开始并立即触摸取消,然后松开手不会发出任何信号。 在某些情况下,大面积触摸根本不会触发任何事件,甚至 touchesBegan 也不会触发。 基本上,iOS 不允许我使用非常基本的场景 - 仅检测屏幕触摸/释放的事实。

有什么方法可以直接查询屏幕触摸 state 而不能与响应链一起使用? 或者抑制取消事件触发? 或者,也许我错过了什么?

不幸的是,截至目前,尚无解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM