MotionEvent
我正在为平板电脑编写一个 Android 5.1 应用程序,我能够在对象的帮助下区分触摸和手写笔输入。
是否可以只允许手写笔输入(即触摸应该没有效果)?
MotionEvent
我正在为平板电脑编写一个 Android 5.1 应用程序,我能够在对象的帮助下区分触摸和手写笔输入。
是否可以只允许手写笔输入(即触摸应该没有效果)?
不确定没有更好的方法,但您可以创建自定义视图,将其放在布局中的最顶部(使其具有全宽和全高,以便覆盖整个区域)。视图唯一的工作是处理输入并通过将它们标记为已处理来“消耗”您想要过滤掉的所有运动事件(即这些不是来自触控笔),并忽略所有其他事件,从而允许框架通过您的视图层次结构传播由其他视图定期处理。
编辑
最简单的实现是让您的视图扩展现有但简单的东西,例如。FrameLayout
或Space
(所以你不需要打扰所有的措施)并覆盖onTouchEvent()
以过滤所有输入。如果这是您不想传递的东西,请通过返回在此处“使用”它true
,否则返回false
以使其传播。重要的是使您的视图最重要以覆盖所有其他视图,即
FrameLayout
YourCustomView
PreviousLayout