This one pull to refresh library, support for load more, it can contain a LinearLayout or ListView and other layout. you can custom heder or footer.
## Getting StartedAdd the library as dependency to your build.gradle
file.
dependencies {
//other dependencies...
compile 'com.xingliuhua:lib_refreshlayout:2.0'
}
Add the View to your existing layout file:
<com.xingliuhua.lib_refreshlayout.RefreshLayout
android:id="@+id/refreshLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.xingliuhua.lib_refreshlayout.RefreshLayout>
setOnRefreshListener in java:
refreshLayout.setOnRefreshListener(new RefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
refreshLayout.postDelayed(new Runnable() {
@Override
public void run() {
refreshLayout.setRefreshing(false);
}
}, 2000);
}
@Override
public void onLoadmore() {
refreshLayout.postDelayed(new Runnable() {
@Override
public void run() {
// refreshLayout.setNeedLoadMore(false);
refreshLayout.setLoadMoreing(false);
}
}, 2000);
}
});
extends AbsRefreshHeder:
public class MyRefreshLayoutHeader extends AbsRefreshHeder {
@Override
public void onStartRefreshing() {
}
@Override
public void onPull(float dy) {
}
@Override
public void onFinishRefreshing() {
}
}
set header height:
<com.xingliuhua.lib_refreshlayout.RefreshLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/refreshLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:headerHeight="80dp">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.xingliuhua.lib_refreshlayout.RefreshLayout>
set header use in code:
refreshLayout.setRefreshHeder(new MyRefreshLayoutHeader(this));
extends AbsRefreshFooter:
public class SimpleRefreshLayoutFooter extends AbsRefreshFooter {
@Override
public void onStartRefreshing() {
}
@Override
public void onPull(float dy) {
}
@Override
public void onFinishRefreshing() {
}
}
set footer in java:
refreshLayout.setRefreshFooter(new MyRefreshLayoutFooter(this));