网络请求状态LoadingLayout的使用记录

2018-01-30  本文已影响0人  smallestt
项目里都会遇到几种页面,分别为加载中、无网络、无数据、出错四种情况,经常要使用,效果图如下: WX20180130-151920.png WX20180130-151942.png

实现方式:

  LoadingLayout.getConfig()
                .setErrorText("出错啦~请稍后重试!")
                .setEmptyText("抱歉,暂无数据")
                .setNoNetworkText("无网络连接,请检查您的网络···")
                .setErrorImage(R.mipmap.bg_def_photo)
                .setEmptyImage(R.mipmap.bg_def_photo)
                .setNoNetworkImage(R.mipmap.pic_xnd_wuwangluo)
                .setAllTipTextColor(R.color.c666666)
                .setAllTipTextSize(12)
                .setReloadButtonText("点击重新加载")
                .setReloadButtonTextSize(14)
                .setReloadButtonTextColor(R.color.c999999)
                .setLoadingPageLayout(R.layout.view_progress_bar)//自定义加载中界面
                .setAllPageBackgroundColor(R.color.c00000000)
                .setReloadButtonWidthAndHeight(120, 40);

由于“加载中”的页面,可能每个App都不一样,因此LoadingLayout支持自定义LoadingPage,如下:
LoadingLayout.getConfig() .setLoadingPageLayout(R.layout.define_loading_page);
为了适应个别界面的特殊需求,LoadingLayout也支持局部设置属性,仅对当前对象生效,不影响全局,如下:

  LoadingLayout  loading = (LoadingLayout) findViewById(R.id.loading_layout);
        loading.setLoadingPage(R.layout.define_loading_page)
                .setEmptyText("暂无报告数据")
                .setErrorText("")
                .setNoNetworkText("")
                .setErrorImage(R.mipmap.ic_launcher)
                .setErrorTextSize(16)
                .setReloadButtonText("点我重新加载哦"); //等等
loadingLayout.setOnReloadListener(new LoadingLayout.OnReloadListener() {
            @Override
            public void onReload(View v) {

            }
        });
 loadingLayout.setStatus(LoadingLayout.Loading);//加载中
 loadingLayout.setStatus(LoadingLayout.Empty);//无数据
 loadingLayout.setStatus(LoadingLayout.Error);//错误
 loadingLayout.setStatus(LoadingLayout.No_Network);//无网络
 loadingLayout.setStatus(LoadingLayout.Success);//加载成功
  <com.weavey.loading.lib.LoadingLayout
        android:id="@+id/loading"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:isFirstVisible="false">
//
</com.weavey.loading.lib.LoadingLayout>

上一篇 下一篇

猜你喜欢

热点阅读