Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记

以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆。感觉麻烦死了。今天学习了SwipeRefreshLayout 的用法,来分享一下,有说的不对的地方请大家指点。

SwipeRefreshLayout 是Google在support v4 19.1版本的library更新的一个下拉刷新组件,也就是说 开发的时候把Android版本调到4.4或者以上才会有这个。

先来看看效果图

Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记

再来看看布局文件里的代码(我这里放的是一个ListView 当然也可以放其他控件 只要你高兴就好)

 <android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/main_srl_bloglist"
android:layout_width="fill_parent"
android:layout_height="fill_parent"> <ListView
android:id="@+id/main_lv_bolg_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="#00000000"
android:dividerHeight="5dp"></ListView> </android.support.v4.widget.SwipeRefreshLayout>

最后来看看Activiy里的代码吧(这里我用的AndroidAnnotations 所以没有写 findViewById 哈哈)

 //设置刷新时动画的颜色,可以设置4个
mSwipeRefreshLayout.setColorSchemeResources(android.R.color.holo_blue_light, android.R.color.holo_red_light, android.R.color.holo_orange_light, android.R.color.holo_green_light);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
mIndex=1;
mBlogList.clear();
loadBlogData();
}
});

在onRefresh 里调用获取数据的方法就好了 数据获取完毕 别忘了 修改状态

mSwipeRefreshLayout.setRefreshing(false);

哈哈 以前要写成吨的代码 用SwipeRefreshLayout 就这几行代码 是不是很方便。

上一篇:java基础(四) java运算顺序的深入解析


下一篇:Unity5中新的Shader体系简析