关键字: 多点触控, 控件, 按钮, Android, 同时按下 【也许这样能帮到更多人检索到??】
很久没写博文了,最近在做毕业设计的过程中,碰到了这样一个问题,之前一直没遇到过,走了一些弯路,现在写下来记录下。
在百度的过程中并没有看到有相关的解答,而更多的还是带你走向弯路的。下面进入博文的正题吧。
问题: 实现“百度手柄”的这个多个按钮,同时点击,即一个按钮点着不放,另一个按钮被点击。
实际上,很多人第一反应就是这个东东不是本来android就可以的吗?然后信誓旦旦地去写一个Demo之后发现实际上不行。
大家都会去监听touch事件,然后做处理,你可以发现,你按下的第一个按钮,之后再按其他的按钮,其他的按钮的touch是不会被执行的,而是都走第一个按钮的touch里面的处理流程。
紧接着大家去百度,百度大家都跟你解答是用多点触控, 并且一堆信息很明确地告诉你要去监听几根手指头点击屏幕....这时候你心里的答案基本就定型了, 之后开始写多点触控的处理流程。
最后你会发现,你自己处理,无比的麻烦,你需要通过 手指的x, y去判断现在点击的控件是什么。而后你还会遇到一个问题,最后一个手指弹起的事件 并无法监听到。
说了这么多,其实最后只需要在这些button的父布局中,加入一行属性
android:splitMotionEvents="true"
有人说这个叫做是否支持全局多点触控,false为不支持,true为支持。
而我觉得这个就是看是否分流touch事件到各个对应控件.
有时候知道得少,便成了时间成本!!
时间: 2024-10-17 18:44:48