效果图
- In Activity or Fragment
In Any View
使用场景
我们的程序流程受很多因素影响不可能每次都能达到我们预期的状态,所以我们经常会在页面上添加一些请求失败、成功、空数据的对应布局。相相信很多人都这样做过。这样做肯定可以,但是比较繁琐,而且xml里也会多出一些感觉不太有用的布局(都是设为GONE),也影响我们看布局。今天我记录下翔神抽出来的LoadingAndRetryManager,代码其实很少就3个类。我今天主要来看看他实现的思路,使用方法也很简单,直接看他github是的readme好了
设计思路
其实这个逻辑并不复杂,整体的思路就是当程序出现不是我们预先设定步骤时,替换掉我们xml中的view显示相应的view(loading、retry、empty)
具体实现是自定义一个容器也就是项目中的LoadingAndRetryLayout,将各种场景下对应的view(mLoadingView、m