文/yxj
http://blog.csdn.net/sk719887916/article/details/66974959
slidedetailsLayout实现了高仿淘宝、京东商品详情页面的上拉加载图文详情功能。使用扩展ViewGroup实现,对事件冲突已经做了处理,可嵌套ListView、WebView等*使用。
具体效果和源码出处
https://github.com/cnbleu/SlideDetailsLayout
看上去很完美,但是我一个朋友在使用中碰到一个问题:
SlideDetailsLayout配合viewPager使用的时候,滑动冲突了。
viewpager中有三个fragement,里面有listview、scrollview等。
解决方案:
SlideDetailsLayout类中的onInterceptTouchEvent拦截方法中有一个判断
这个方法是判断viewGroup里面的childView是否可以滑动,避免抢了子View的事件。
我们看一下canChildScrollVertically方法中都做了什么
看到这里我们明白了,其实就是在判断viewGroup中是否有子View需要滑动,有的话就返回false,让拦截事件继续传递下去。
但是如果是viewpager的话,各个fragement里面的listview并不是直接包含在viewgroup中的,而是在往里面深入一层,于是我做了一下改动就OK了。
我并没有去遍历viewPager,而是直接getChildAt(0),因为我的布局里面只包含了一层。
到此顺利的帮朋友解决了问题,还顺便赚了一个23块的大红包。