SwipeRefreshLayout感觉是Google在吸收了PullToRefresh-ListView,ActionBarPullToRefresh之后实现的google风格的刷新控件,那花花绿绿的穿越条,浓浓的google味。
迁移到Android studio后就必须使用AppCompat_v7 21+ ,切换了之后你就会发现一些有趣的变化,比如说这个SwipeRefreshLayout,就进化成了一个圆。
那么就来看下怎么使用SwipeRefreshLayout吧!
<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swipe_refresh_container" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#E4E4E4"> </android.support.v4.widget.SwipeRefreshLayout>
swipeRefreshLayout.setColorSchemeResources(android.R.color.holo_purple, android.R.color.holo_blue_bright, android.R.color.holo_orange_light, android.R.color.holo_red_light); swipeRefreshLayout.setOnRefreshListener(this);这里圆圈设置几个替换显示的颜色,然后设置监听,实现implements SwipeRefreshLayout.OnRefreshListener接口的onRefresh方法
@Override public void onRefresh() { adapter.sync(); }
就这么多吗?是的,就怎么简单,再也不用忍受ActionBarPullToRefresh的三个依赖包,和在AppCompat_v7 21中兼容的问题。
下面再说一个问题,
android.support.v4.widget.SwipeRefreshLayout可以不必使用在跟布局中,但是它内部的控件必须只有一个,而且要是可以滑动的,比如listview,Scrollview,如果遇到滑动异常可以参考下面的链接:
滑动问题