TA的每日心情 | 开心 2021-12-13 21:45 |
---|
签到天数: 15 天 [LV.4]偶尔看看III
|
感谢原文作者:http://stormzhang.github.io/android/2014/03/29/android-swiperefreshlayout/
API doc:
http://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html
首先须把你的support library的版本升级到19.1或更新
效果:

使用超级简单!
在layout中添加SwipeRefreshLayout
- 1 <android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
- 2 android:id="@+id/swipe_container"
- 3 android:layout_width="match_parent"
- 4 android:layout_height="match_parent" >
- 5
- 6 <ScrollView
- 7 android:layout_width="match_parent"
- 8 android:layout_height="wrap_content" >
- 9
- 10 <TextView
- 11 android:id="@+id/textView1"
- 12 android:layout_width="match_parent"
- 13 android:layout_height="wrap_content"
- 14 android:gravity="center"
- 15 android:paddingTop="10dp"
- 16 android:text="@string/swipe_to_refresh"
- 17 android:textSize="20sp"
- 18 android:textStyle="bold" />
- 19 </ScrollView>
- 20
- 21 </android.support.v4.widget.SwipeRefreshLayout>
复制代码
在Activity中使用:
- 1 tv = (TextView)findViewById(R.id.textView1);
- 2 swipeRefreshLayout = (SwipeRefreshLayout)findViewById(R.id.swipe_container);
- 3 //设置刷新时动画的颜色,可以设置4个
- 4 swipeRefreshLayout.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);
- 5 swipeRefreshLayout.setOnRefreshListener(new OnRefreshListener() {
- 6
- 7 @Override
- 8 public void onRefresh() {
- 9 tv.setText("正在刷新");
- 10 // TODO Auto-generated method stub
- 11 new Handler().postDelayed(new Runnable() {
- 12
- 13 @Override
- 14 public void run() {
- 15 // TODO Auto-generated method stub
- 16 tv.setText("刷新完成");
- 17 swipeRefreshLayout.setRefreshing(false);
- 18 }
- 19 }, 6000);
- 20 }
- 21 });
复制代码
PS:setColorScheme()已经弃用,使用setColorSchemeResources()来设置颜色。 |
|