StateManager

Project Url: alibaba/StateManager
Introduction: 对 Android 通用展示的封装,解决 Loading、Exception 及常用业务的复用问题
More: Author   ReportBugs   
Tags:

Download

标签(空格分隔): 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()方法,可以方便的显示各种状态

特性

  1. 只有在显示对应状态的时候,才会加载 View(需要提前注册好各种需要的状态)
  2. 支持定制各种状态的文案及视觉
  3. 支持拓展自己的状态
  4. 支持局部或者全局显示各种状态
  5. 支持 Activity、Fragment、Layout 及帮助类的方式
  6. 支持在 RecyclerView 中单个 Item 变换各种状态

用法

1. StateLayout

这是一个自定义布局容器,可以直接在 xml 文件中使用

2. StateManagerActivity

需要继承 StateManagerActivity,其余流程保持不变

2. StateManagerFragment

需要实现 getLayoutId(),返回对应的布局资源,在 initViewContent()方法中,初始化 UI,其余流程保持不变

其他

  1. 在某些情况下,replaceFragment 觉得太重了,可以直接实现一个 State,来显示对应的业务,更加的轻量级
Support Me
Apps
About Me
Google+: Trinea trinea
GitHub: Trinea