Android LoadView,一款可以自定义动画的加载库

LoadView

android loadview是一个可以灵活自定义并且可以结合第三方动画解耦的库,使用起来也是超级方便

演示

暂无

项目地址

https://github.com/gyf-dev/LoadView

使用

android studio

implementation 'com.gyf.loadview:loadview:1.0.7'

用法

简单用法

  • 使用一,默认加载Loading是ProgressBar圆形样式,可以通过属性修改颜色,默认是colorAccent颜色,如果想使用其他Loading样式请看使用二
  <com.gyf.loadview.LoadView
      android:id="@+id/load_view"
      android:layout_width="match_parent"
      android:layout_height="match_parent" />
  • 使用二

在xml中自定义loading样式

   <com.gyf.loadview.LoadView
       android:id="@+id/load_view"
       android:layout_width="match_parent"
       android:layout_height="match_parent">
   
       <!--自定义loading动画,可以自定义为任何控件,也支持第三方动画库-->
       <ProgressBar
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" />
   </com.gyf.loadview.LoadView>

在java中自定义loading样式

   loadView.setLoadingView(new ProgressBar(this));

或者

     loadView.setLoadingView(R.layut.你的布局id);
  • 使用三
   LoadView loadView = new LoadView(this);
   addView(loadView);

高级用法

  • 使用LoadManager自定义LoadView全局样式(LoadManager还有很多方法,请参考LoadManager类,这里就不一一举例了)
   LoadManager.getInstance().setEmpty("空的数据",R.mipmap.empty)  //自定义加载为空,展示的样式
                   .setFail("失败了",R.mipmap.fail);  //自定义加载失败,展示的样式
  • LoadView状态和方法监听

    设置当前状态

           loadView.setCurrentStatus(LoadStatus.UNDO);  //默认值
           loadView.setCurrentStatus(LoadStatus.LOADING);  //加载中
           loadView.setCurrentStatus(LoadStatus.FAIL);  //加载失败
           loadView.setCurrentStatus(LoadStatus.ERROR_NET);  //网络错误
           loadView.setCurrentStatus(LoadStatus.EMPTY);   //数据为空
           loadView.setCurrentStatus(LoadStatus.SUCCESS);  //加载成功
    

    设置加载失败监听

       loadView.setOnFailClickListener(new LoadView.OnLoadFailClickListener() {
                   @Override
                   public void onLoadFailClick() {
                       // do something,比如获取数据等
                   }
               });
    

    设置加载中监听

       loadView.setOnLoadingListener(new LoadView.OnLoadingListener() {
                   @Override
                   public void onLoadingStart(View loadingView) {
                       //加载开始时,比如引用第三方动画库,开启动画等操作
                   }
       
                   @Override
                   public void onLoadingEnd(View loadingView) {
                       //加载结束时,比如引用第三方动画库,关闭动画等操作
                   }
               });
    
  • LoadView属性和方法介绍

    xml属性java方法说明
    load_gravitysetGravity()设置布局的位置
    load_loading_gravitysetLoadingGravity()设置Loading布局的位置
    load_image_text_gravitysetImageTextGravity()设置图片和文字布局的位置
    load_marginsetMargins()设置布局的左右上下边界值,单位px
    load_margin_left设置布局的左边界值,单位px
    load_margin_top设置布局的顶部边界值,单位px
    load_margin_right设置布局的右边界值,单位px
    load_margin_bottom设置布局的底部边界值,单位px
    load_loading_marginsetLoadingMargins()设置Loading布局的左右上下边界值,单位px
    load_loading_margin_left设置Loading的左边界值,单位px
    load_loading_margin_top设置Loading的顶部边界值,单位px
    load_loading_margin_right设置Loading的右边界值,单位px
    load_loading_margin_bottom设置Loading的底部边界值,单位px
    load_image_text_marginsetImageTextMargins()设置ImageText布局的左右上下边界值,单位px
    load_image_text_margin_left设置ImageText的左边界值,单位px
    load_image_text_margin_top设置ImageText的顶部边界值,单位px
    load_image_text_margin_right设置ImageText的右边界值,单位px
    load_image_text_margin_bottom设置ImageText的底部边界值,单位px
    load_image_marginsetImageMargins()设置Image布局的左右上下边界值,单位px
    load_image_margin_left设置Image的左边界值,单位px
    load_image_margin_top设置Image的顶部边界值,单位px
    load_image_margin_right设置Image的右边界值,单位px
    load_image_margin_bottom设置Image的底部边界值,单位px
    load_text_marginsetTextMargins()设置Text布局的左右上下边界值,单位px
    load_text_margin_left设置Text的左边界值,单位px
    load_text_margin_top设置Text的顶部边界值,单位px
    load_text_margin_right设置Text的右边界值,单位px
    load_text_margin_bottom设置Text的底部边界值,单位px
    load_text_failsetFailText()设置加载失败文字
    load_text_error_netsetErrorNetText()设置加载网络错误文字
    load_text_emptysetEmptyText()设置加载为空文字
    load_res_failsetFailRes()设置失败的图片资源
    load_res_error_netsetErrorNetRes()设置网络错误的图片资源
    load_res_emptysetEmptyRes()设置无数据的图片资源
    load_text_colorsetTextColor()设置文字的颜色
    load_text_color_failsetFailTextColor()设置失败展示的字体颜色
    load_text_color_error_netsetErrorNetTextColor()设置网络加载错误展示的字体颜色
    load_text_color_emptysetEmptyTextColor()设置数据为空展示的字体颜色
    load_text_sizesetTextSize()设置字体大小,单位sp
    load_image_colorsetImageColor()设置图片的颜色
    load_image_color_failsetFailImageColor()设置失败图片的颜色
    load_image_color_error_netsetErrorNetImageColor()设置网络错误图片的颜色
    load_image_color_emptysetEmptyImageColor()设置数据为空图片的颜色
    load_image_color_enabledsetImageColorEnabled()设置是否可以修改图片的颜色
    load_image_color_fail_enabledsetFailImageColorEnabled()设置是否可以修改失败图片的颜色
    load_image_color_error_net_enabledsetErrorNetImageColorEnabled()设置是否可以修改网络错误图片的颜色
    load_image_color_empty_enabledsetEmptyImageColorEnabled()设置是否可以修改数据为空图片的颜色
    load_default_loading_colorsetDefaultLoadingColor()设置默认的loading的颜色

混淆

    原文作者:HeLe小子拽
    原文地址: https://www.jianshu.com/p/9665c4ba7ce2
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞