作为一名开发人员,我倾向于先编程,然后再研究。我试图实现一个可以处理多个用户输入的屏幕。基本上映射的不仅仅是一根手指。我尝试了两件事..
我有一个实现 OnTouchListener 的 Activity 类。这里我有两个单独的子视图,它们将 Activity 添加为它们的 ontouch 监听器。然后我有一个打印行,打印出 event.getPointerCount() 并打印出每个指针的位置。
下载到手机上测试了一下。我注意到指针永远不会超过两个。我什至注意到,如果一根手指放在一个子视图上,另一根手指放在另一个子视图上,则事件只会到达第一个子组件。接下来,我尝试在每个子组件上放置单独的侦听器,看看这是否有效,但其行为相同。
因此,在处理用户触摸屏幕的输入时,Android 似乎只支持总共两个用户输入。
这是真的?从测试和研究来看,情况确实如此。
有没有人遇到过这个限制。有什么巧妙的解决方法吗?
感谢您的时间和回复。
dk
支持的触摸点数量取决于设备。在所有当前可用的 Android 版本中MotionEvent
s 被发送到单个目标视图并描述所有当前活动触摸点的状态。目标视图由第一个视图的位置决定MotionEvent.ACTION_DOWN
事件发生。
看帖子理解多点触控 http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html在 Android 开发者博客上,快速了解如何在 Android 上处理多点触控事件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)