Android onTouch onClick 屏蔽多点触控

项目实际须要,一个组件须要同时相应OnCLickListener和OnTouchListener,致使一个问题是:按住一个控件不动,另一个控件并不受影响,能够随意点击,并相应相应的事件。即便界面跳转后,点击仍然在响应上一个Activity的按钮时间。很诡异。处处Google,而后找到了问题所在,这里写个Demo,说明下问题。oschina博客愈来愈很差用了,代码很简单,不贴了,说说过程和结论就能够了。android

在一个Activity AA里面写两个Button,分别是A和B,两个Button都setOnClickListener,setOnTouchListener,setOnLongClickListener。假设点击Button B之后界面跳转到Activity BB,那么,有以下现象:按住Button A不动,连续点击Button B,将会跳出多个Activity BB界面出来。即便在Activity BB界面已经在当前最顶端,点击仍然在相应Activity AA的事件。测试

这是由于(测试机器为Android5.0)多点触控在当前界面默认是开启的,只要在Button所在组件的父容器添加以下属性便可:spa

android:splitMotionEvents="false"事件

根据测试,相应顺序为:ACTION_DOWN-->onClick-->onLongClick-->ACTION_UP博客

相关文章
相关标签/搜索