为了不误导新人,这篇帖子写的比较早了,这里2016年2月23日21:33:20更新的内容:
千万不要在实际开发中用scrollview嵌套listview\recylerview来处理滑动嵌套, 这是种处理是相当影响性能的,之前这么做完全是抱着学习的态度,顺着嵌套的情况如何通过事件拦截的机制解决该情景.
但如果我们在实际开发中,遇到listview上方有一大块headview的scrollview里面,一定只用一个listview就好了.无论headview再复杂,都是可以去addview,然后封装到listview里面,只需要对外暴露对应更新view控件的方法即可.近期会更新一片博客+源码,到时候在贴链接~~~~
----------------------------华丽分割线--------------------------------------------------------
之前写了篇文章android(仿QQ向右滑动退出)在viewpager中onTouchEvent无法监听到ACTION_DOWN的getX的值,代码.其实总结起来也就是ViewGroup嵌套ViewGroup,在点击View的事件拦截与传递机制的问题.之前那篇文章虽然能按照那个方法解决问题,但是究其原因并未清楚领悟和掌握,为了不误导同学,加之最近阅读了相关书籍,在写一篇文章来说明这个问题.
附上在开发过程中遇到的解决ScrollView嵌套ListView,不能下拉刷新的案例源码.
一.ViewGroup和View内的点击事件和其作用
ViewGroup内部关于点击事件有三个方法: