Android-MaterialRefreshLayout的一些说明

来源:互联网 发布:四维排课软件免费下载 编辑:程序博客网 时间:2024/05/23 14:19

1. 自定义属性:

<?xml version="1.0" encoding="utf-8"?><resources>    <!-- style for MaterialRefreshLayout  -->    <declare-styleable name="MaterialRefreshLayout">        <!--设置刷新是入侵式还是非入侵式-->        <attr name="overlay" format="boolean"/>        <!-- style for MaterialWaveView  -->        <!--设置波浪的高度-->        <attr name="wave_height_type" format="enum">            <enum name="normal" value="0"/>            <enum name="higher" value="1"/>        </attr>        <!--设置波浪的颜色-->        <attr name="wave_color" format="color"/>        <!--设置是否使用波浪效果-->        <attr name="wave_show" format="boolean"/>        <!-- style for CircleProgressBar  -->        <!--设置圆圈变换的颜色-->        <attr name="progress_colors" format="reference"/>        <!--暂不明确-->        <attr name="progress_stoke_width" format="dimension"/>        <!--设置圆圈的背景-->        <attr name="progress_backgroud_color" format="color"/>        <!--是否显示箭头-->        <attr name="progress_show_arrow" format="boolean"/>        <!--箭头宽度-->        <attr name="progress_arrow_width" format="dimension"/>        <!--箭头高度-->        <attr name="progress_arrow_height" format="dimension"/>        <!--是否显示圆圈的背景-->        <attr name="progress_show_circle_backgroud" format="boolean"/>        <!--设置文字进度-->        <attr name="progress_value" format="integer"/>        <!--设置文字进度的最大值-->        <attr name="progress_max_value" format="integer"/>        <!--设置文字大小-->        <attr name="progress_text_size" format="dimension"/>        <!--设置文字颜色-->        <attr name="progress_text_color" format="color"/>        <!--是否显示文字进度-->        <attr name="progress_text_visibility" format="enum">            <enum name="visible" value="0"/>            <enum name="invisible" value="1"/>        </attr>        <!--暂不明确-->        <attr name="progress_size_type" format="enum">            <enum name="normal" value="0"></enum>            <enum name="big" value="1"></enum>        </attr>        <!--是否加载更多-->        <attr name="isLoadMore" format="boolean"></attr>    </declare-styleable></resources>

2. 使用说明

使用非常简单,在MaterialRefreshLayout控件下设置一个子view即可,注意:MaterialRefreshLayout中只能有一个子view:

<com.cjj.MaterialRefreshLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    android:id="@+id/refresh"    android:layout_width="match_parent"    android:layout_height="match_parent"    >      <...ListView or GridView or RecyclerView or ScrollView and more...></com.cjj.MaterialRefreshLayout>

Java代码中设置刷新监听即可:

materialRefreshLayout = (MaterialRefreshLayout) findViewById(R.id...); materialRefreshLayout.setMaterialRefreshListener(new MaterialRefreshListener() {      @Override      public void onRefresh(final MaterialRefreshLayout materialRefreshLayout) {          //下拉刷新...      }       @Override       public void onRefreshLoadMore(MaterialRefreshLayout materialRefreshLayout) {          //上拉刷新...       }  }

接下来要使用什么效果,只要设置自定义的属性即可。当然,还有一个挺不错的功能,支持自动刷新

materialRefreshLayout.autoRefresh();//drop-down refresh automatically        materialRefreshLayout.autoRefreshLoadMore();// pull up refresh automatically

3. 缺憾:

此框架使用起来很简单,也支持一些效果的设置,但是还是有一些缺憾:
(1)不支持自定义刷新样式,框架中只有两种样式,小圆圈跟一个小太阳,要使用其他样式估计要自己改框架了
(2)加载更多过度不够平滑,也不支持非入侵式。
(3)。。。。。。

github地址:Android-MaterialRefreshLayout
中文文档地址:Android-MaterialRefreshLayout中文文档

0 0