在GitHub
上有一款很不错的Android多状态布局:MultipleStatusView,在之前的项目中我一直都使用它,但慢慢地,我发现了它的一些不便之处:
-
配置比较死板。视图根布局的
Id
、点击重连控件的Id
都必须按照文档的写死,如果不一致或者漏掉可能会导致一些奇怪的bug
。 -
视图状态比较有限。需要自定义一个状态视图(比如需要登录视图)的话比较麻烦,如果采用
MultipleStatusView
嵌套MultipleStatusView
的做法,各个状态之间切换容易混乱——关于这个问题,我像作者提了pr
,但是仍未处理。
基于上面的原因,我决定自己造一个轮子:MultiStateLayout,它支持全局设置默认状态视图,既包含加载中、断网等几种常用视图,也可以自由地添加自定义的视图。目前还在开发中,会长期维护下去,欢迎大家的意见和建议。