StateManager
Introduction: 对 Android 通用展示的封装,解决 Loading、Exception 及常用业务的复用问题
Tags:
标签(空格分隔): Android
Gradle
dependencies {
compile 'com.alipictures:statemanager:1.0.0'
}
Maven
<dependency>
<groupId>com.alipictures</groupId>
<artifactId>statemanager</artifactId>
<version>1.0.0</version>
<type>pom</type>
</dependency>
Usage
mStateLayout.showState("loading_state");
是什么?
更加方便的加载各种状态,各个状态事件的回调,支持在 Theme 里面设置对应状态样式
包含了 Loading 状态,Exception 状态,Net Error 状态,EmptyData 状态及核心态,通过调用 showState()方法,可以方便的显示各种状态
特性
- 只有在显示对应状态的时候,才会加载 View(需要提前注册好各种需要的状态)
- 支持定制各种状态的文案及视觉
- 支持拓展自己的状态
- 支持局部或者全局显示各种状态
- 支持 Activity、Fragment、Layout 及帮助类的方式
- 支持在 RecyclerView 中单个 Item 变换各种状态
用法
1. StateLayout
这是一个自定义布局容器,可以直接在 xml 文件中使用
2. StateManagerActivity
需要继承 StateManagerActivity,其余流程保持不变
2. StateManagerFragment
需要实现 getLayoutId(),返回对应的布局资源,在 initViewContent()方法中,初始化 UI,其余流程保持不变
其他
- 在某些情况下,replaceFragment 觉得太重了,可以直接实现一个 State,来显示对应的业务,更加的轻量级