来源:APP研发 - 毕霞
实现思路
目前我们项目用到的骨架屏在列表页及商品详情页,所以我的项目里将骨架屏分为两个模块,一个是针对list这种多个view要预加载的,另一种针对一个页面某个view需要预加载的情况。
List部分
在Android端,通常用RecyclerView+Adapter+ViewHolder来实现列表加载视图,Adapter作为适配器用来将各种数据以合适的形式显示到RecyclerView上, 初步想法有以下几种方案:
直接在原来的布局上进行修改,将骨架屏的布局放置到当前布局上层,通过控制显示隐藏来实现
这样实现和业务耦合性太强,已有的代码和逻辑改动较大,风险也太大
新建骨架屏的ViewHolder,重新写一个骨架屏item的布局,