复杂的布局嵌套怎么实现 5C

scrollview+TabLayout,ViewPager+fragment+refreshLayout+listview,前面的嵌套后面的,这种复杂布局怎么处理滑动冲突事件,类似上滑查看详情,最外层是scrollview,上拉的详情是tablayout+viewpager,它里面嵌套fragment,里面又是上拉加载更多的listview

1个回答

有2种方式供你参考,根据设计需求进行选择
1. 多层viewgroup的同一/不同方向的冲突,一般在父view的onInterceptTouchEvent中进行拦截,写好拦截的条件,比如scrollview->scrollview->listview,那么你只需要在除最底层的view的view内的onInterceptTouchEvent内写好拦截条件即可.优势是代码逻辑清晰,缺点是,一旦达到拦截条件,那么后续的事件传递将直接传递至当前view,子View将不再接收到后续事件.
2. 嵌套滚动机制 nestscroll,实现相关接口,可以实现父子View同时处理滑动事件,避免了第一个方法的只能1个view进行响应的缺陷,缺点是代码量相对第一个更大

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐