前言
- 最近笔者在友情客串去给一培训机构android培训生讲解android初级实际开发技巧中,就提到了这个问题.这里分享下,避免其他童鞋在处理类似的滑动嵌套上走同样的弯路.
- 这里打算用两篇来讲解我们开发中常遇到listView和recyclerView在处理滑动嵌套的时候的最佳解决方案.
实现思路
- 首先第一篇,是我们ListView.ListView相对于recyclerView处理相对要简单一些,因为ListView为我们提供了addHeadView()这个方法,只需要把listview之上的复杂布局全部作为headview填充到listview里面,listview之下的复杂布局全部作为footview填充到listview里面即可.这里给个具体的案例吧.
具体案例
- 这种评论加点赞的页面在任何一款APP里面都非常普遍,一般新手开发者中规中矩的按照scrollview+listview来实现,类似这样:
- 这样做,其实也没有错,只需要对嵌套滑动点击事件进行拦截处理也可以达到效果,不过随着listview的item布局复杂化,你会发现该页面的滑动性能相当差.因此便有了我们下一步的优化.
- 这种做法,无论headview的布局如何复杂,我们只需要暴露出对应的view在adapter里面的对外方法,供其在被调用的activity进行逻辑处理即可.及时嵌套多层的headview,我们也不怕担心数