基于StatusLayout1.0的功能进行了一次改进和调整,更好去适应业务场景减少工作,高自由定制不局限于Loading Error等布局,尽可能减少不必要的重复代码设置以及引入成本,更方便简单地在已有的页面中引入StatusLayout
Github地址: https://github.com/Colaman0/StatusLayout
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.Colaman0:StatusLayout:2.0.2'
}
-
只需要调用
wrapView方法传入view,即可返回一个StatusLayout,并且把View的位置替换成StatusLayout,把View作为Status.Normal状态的布局,也就是默认布局。 方便在旧项目中去引用,只需要传入某个view就可以了,不需要在xml里手动替换,减少接入成本 -
- 首先通过
addStatus方法传入Status和StatusConfig,完成添加状态页面布局Status表明当前页面的状态类型StatusConfig包含页面的相关内容比如View和点击事件的View id
- 在切换布局的时候调用
switchLayout切换不同Status的页面
- 首先通过
-
通过
setLayoutActionListener传入监听器,在onLayoutAction方法里获取到点击事件触发时当前页面的Status以及对应的View -
通过
setLayoutAnimation方法传入页面进入以及退出的动画效果,默认是渐隐式动画 -
setGlobalData传入全局数据集合,数据内容和addStatus一致setGlobalAnim设置全局的页面切换效果,setLayoutAnimation是针对单个做定制