基于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
是针对单个做定制