如果要监听手势,一般会想到onTouch,但是我们发现View的onTouch事件只是相应action-down。
原因:onTouch中return false。
解决办法:1, return true
2、在xml布局里加上 android:longClickable="true"
这两者并不完全是等价的。
return true就意味着该view会继续处理抬起事件,而不会将此时间传递给父View---------这也意味着只有一个view可以继续监听touch事件
因此必须注意ontouch事件的传递过程。由子view传给父view,如果return false,可以传给父view,true则不能。
手势最好在activity中的dispatchTouchEvent中做,这个是无法被子view屏蔽的。
另外onTouch如果返回true,则不能监听onClick