PageStatus Android 页面状态管理
效果图
依赖:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.Xiaohy61:PageStatus:1.0.2'
}
配置
- 可以在application全局配置:
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
//图片,文字,文字颜色都可以自己配置,或者只配置文字
new PageStatus.Builder()
.setLoadingTipText("数据加载中...")
.setNetworkErrorTipText("网络出现错误...")
.setBtnRetryText("点我重试")
.setDataErrorTipText("发生错误...")
.setEmptyDataTipText("抱歉暂无相关数据!")
.setEmptyOrderTipText("还没有相关订单")
.setEmptyMsgTipText("还没有相关消息呢")
.setEmptyCartTipText("购物车还是空的哦~")
.setDataErrorImage(R.drawable.no_data_icon)
.setEmptyCartTextColor(R.color.grey);
}
}
2.或者在xml中配置: app:isVisibleContent=”true” PageStatus 包含的布局是否可见,默认可见,改为false,被它包含的布局不可见
<com.skyward.pagestatus.PageStatus
android:id="@+id/page_status"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:emptyDataTipText="没有数据"
app:isVisibleContent="true"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="hello word"/>
</RelativeLayout>
</com.skyward.pagestatus.PageStatus>
3.使用
PageStatus mPageStatus = findViewById(R.id.page_status);
mPageStatus.setPageStatus(PageStatusValue.LOADING);
4.PageStatusValue 参数说明
/**
* 数据加载中
*/
public final static int LOADING = 1;
/**
* 数据加载完成
*/
public final static int LOADING_SUCCESS = 2;
/**
* 网络错误
*/
public final static int NETWORK_ERROR=3;
/**
* 没有数据
*/
public final static int EMPTY_DATA = 4;
/**
* 数据错误
*/
public final static int DATE_ERROR =5;
/**
* 购物车为空
*/
public final static int EMPTY_CART =6;
/**
* 订单为空
*/
public final static int EMPTY_ORDER =7;
/**
* 消息为空
*/
public final static int EMPTY_MSG = 8;