Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

gyf-dev/LoadView

Repository files navigation

LoadView

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

演示

  • 这里除了默认loading动画,还集成了第三方动画库作为演示,比如很火的lottie-android,还有其他比较优秀的动画,比如LoadingView,详情见demo

下载demo

使用

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"
 app:load_image_height="100dp"
 app:load_image_width="100dp"
 app:load_loading_height="100dp"
 app:load_loading_width="100dp"
 app:load_current_status="undo"/>
  • 使用二

在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.setOnErrorNetClickListener(new LoadView.OnLoadErrorNetClickListener() {
     @Override
     public void onLoadErrorNetClick() {
     // do something,比如设置网络或者获取数据等
     }
     });

    设置数据为空点击事件

     loadView.setOnEmptyClickListener(new LoadView.OnLoadEmptyClickListener() {
     @Override
     public void onLoadEmptyClick() {
     // do something,比如重新获取数据等
     }
     });

    设置加载中监听

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

    xml属性 java方法 说明
    load_current_status setCurrentStatus() 设置当前loadView的状态
    load_image_width setImageViewSize() 设置图片的大小
    load_image_height setImageViewSize() 设置图片的大小
    load_loading_width setLoadingViewSize() 设置Loading的大小
    load_loading_height setLoadingViewSize() 设置Loading的大小
    load_clickable isLoadClickable() 焦点是否在LoadView中
    load_loading_clickable isLoadingClickable() 设置加载中,焦点是否在LoadView中
    load_fail_clickable isFailClickable() 设置加载失败,焦点是否在LoadView中
    load_error_net_clickable isErrorNetClickable() 设置加载网络错误,焦点是否在LoadView中
    load_empty_clickable isEmptyClickable() 设置加载数据为空,焦点是否在LoadView中
    load_gravity setGravity() 设置布局的位置
    load_loading_gravity setLoadingGravity() 设置Loading布局的位置
    load_image_text_gravity setImageTextGravity() 设置图片和文字布局的位置
    load_margin setMargins() 设置布局的左右上下边界值,单位px
    load_margin_left 设置布局的左边界值,单位px
    load_margin_top 设置布局的顶部边界值,单位px
    load_margin_right 设置布局的右边界值,单位px
    load_margin_bottom 设置布局的底部边界值,单位px
    load_loading_margin setLoadingMargins() 设置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_margin setImageTextMargins() 设置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_margin setImageMargins() 设置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_margin setTextMargins() 设置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_fail setFailText() 设置加载失败文字
    load_text_error_net setErrorNetText() 设置加载网络错误文字
    load_text_empty setEmptyText() 设置加载为空文字
    load_image_fail setFailRes() 设置失败的图片资源
    load_image_error_net setErrorNetRes() 设置网络错误的图片资源
    load_image_empty setEmptyRes() 设置无数据的图片资源
    load_text_color setTextColor() 设置文字的颜色
    load_text_color_fail setFailTextColor() 设置失败展示的字体颜色
    load_text_color_error_net setErrorNetTextColor() 设置网络加载错误展示的字体颜色
    load_text_color_empty setEmptyTextColor() 设置数据为空展示的字体颜色
    load_text_size setTextSize() 设置字体大小,单位sp
    load_image_color setImageColor() 设置图片的颜色
    load_image_color_fail setFailImageColor() 设置失败图片的颜色
    load_image_color_error_net setErrorNetImageColor() 设置网络错误图片的颜色
    load_image_color_empty setEmptyImageColor() 设置数据为空图片的颜色
    load_image_color_enabled setImageColorEnabled() 设置是否可以修改图片的颜色
    load_image_color_fail_enabled setFailImageColorEnabled() 设置是否可以修改失败图片的颜色
    load_image_color_error_net_enabled setErrorNetImageColorEnabled() 设置是否可以修改网络错误图片的颜色
    load_image_color_empty_enabled setEmptyImageColorEnabled() 设置是否可以修改数据为空图片的颜色
    load_default_loading_color setDefaultLoadingColor() 设置默认的loading的颜色

混淆

About

android load view

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /