内部是对listview添加一个header来实现
PullToRefreshListView
获取到listview
pullToRefresh.getRefreshableView();
设置上拉刷新下拉加载的一些属性
更改文字颜色
下拉刷新默认文字为白色
通过自定义属性来更改的
去res/values/attrs.xml下找到ptrHeaderTextColor
前面添加命名空间—将name—拷贝过来—加值
ptr:ptrHeaderTextColor="#f00"
设置下拉刷新模式
模式呢:要么支持下拉刷新.要么支持上拉加载,要么两个都支持
ptr:ptrMode="both"
下拉刷新与上拉加载文字效果一致,需要在代码中更改
可以更改动画图片
ptr:ptrDrawable="@drawable/ic_launcher
更改图片的动画效果---两个
旋转和上下翻转
ptr:ptrAnimationStyle="flip"
布局
<com.handmark.pulltorefresh.library.PullToRefreshListView
android:id="@+id/lv_newsitem_newslist"
android:layout_width="match_parent"
android:layout_height="match_parent"
ptr:ptrAnimationStyle="flip"
ptr:ptrHeaderTextColor="#f00"
ptr:ptrMode="both" />
更改文字
//获取脚布局
//参数1如果是true 返回是头布局,参赛2 true 返回脚布局
//参1与参2 一定要互斥
ILoadingLayout loadingLayoutProxy = pullToRefresh
.getLoadingLayoutProxy(false, true);
//设置加载更多文字--上拉的时候
loadingLayoutProxy.setPullLabel("上拉加载...");
//设置松开加载--上拉到头的时候
loadingLayoutProxy.setReleaseLabel("松开以加载...");
//设置正在加载--松开后
loadingLayoutProxy.setRefreshingLabel("正在加载...");
监听
//只能单独做上拉刷新菜单
pullToRefresh.setOnRefreshListener(OnRefreshListener < ListView > listener);
//只能做上拉加载
pullToRefresh.setOnPullEventListener(OnPullEventListener < ListView > listener);
//即监听上拉刷新又可监听上拉加载
pullToRefresh.setOnRefreshListener(OnRefreshListener2 < ListView > listener);
//设置监听下拉刷新和上拉加载
pullToRefresh.setOnRefreshListener(new MyRefreshListener());
class MyRefreshListener implements
PullToRefreshListView.OnRefreshListener2<ListView> {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
// 下拉刷新
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
// 上拉加载
}
}