晴间多云 2015-07-01
借鉴网上解决办法:
场景:
在实际开发中你可能需要把ListView中的onTouchEvent写在Activity中进行操作,或者是同时存在对ListView或者Activity的不同向操作(例如向左右向上下滑动绑定不同事件)。
问题:
这时候你会发现ListView的onTouchEvent事件有效,但是Activity的onTouchEvent事件却失效,这是为什么呢?
解决与分析:
这是因为ListView是的onTouchEvent 优先权高于Activity的,前者把后者覆盖了,于是造成Activity onTouchEvent失效。
这时候我们查看API以及翻阅网上资料,发现Activity提供另外一个方法的重写。
@Override
public boolean dispatchTouchEvent(MotionEvent event) { return super.dispatchTouchEvent(event); }
@Override public boolean dispatchTouchEvent(MotionEvent event) { return super.dispatchTouchEvent(event); }
替换方法就ok了