The following app basically has a drop-down refresh function, used to basically use Xlistview or write a drop-down refresh, recently Google provides an official drop-down refresh control swiperefreshlayout, I feel good ah, see accustomed to the traditional drop-down refresh, It's a refreshing feeling (the app that seems to know is already using this drop-down refresh).
Google also gives the V4 Compatibility Pack on the official website:
By the way, take a look at the API chant:
and Xlistview similar, is very convenient to use, probably on these 4 commonly used methods, the following a simple example.
1. layout file:
[HTML]View Plaincopy
- <relativelayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
- <android.support.v4.widget.SwipeRefreshLayout
- android:id="@+id/id_swipe_ly"
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
- <ListView
- android:id="@+id/id_listview"
- android:layout_width="match_parent"
- android:layout_height="match_parent" >
- </ListView>
- </android.support.v4.widget.SwipeRefreshLayout>
- </relativelayout>
2, Mainactivty:
[Java]View Plaincopy
- Package Com.zhy.swiperefreshlayoutdemo;
- Import java.util.ArrayList;
- Import Java.util.Arrays;
- Import java.util.List;
- Import Android.annotation.SuppressLint;
- Import android.app.Activity;
- Import Android.os.Bundle;
- Import Android.os.Handler;
- Import Android.support.v4.widget.SwipeRefreshLayout;
- Import Android.util.Log;
- Import Android.widget.ArrayAdapter;
- Import Android.widget.ListView;
- Public class Mainactivity extends Activity implements Swiperefreshlayout.onrefreshlistener
- {
- private static final int refresh_complete = 0x110;
- private Swiperefreshlayout mswipelayout;
- private ListView Mlistview;
- private arrayadapter<string> Madapter;
- private List<string> Mdatas = new Arraylist<string> (Arrays.aslist ("Java", "Javascript", "C + +", "Ruby", "Json" ,
- "HTML"));
- private Handler Mhandler = new Handler ()
- {
- public void Handlemessage (android.os.Message msg)
- {
- switch (msg.what)
- {
- Case Refresh_complete:
- Mdatas.addall (Arrays.aslist ("Lucene", "Canvas", "Bitmap"));
- Madapter.notifydatasetchanged ();
- Mswipelayout.setrefreshing (false);
- Break ;
- }
- };
- };
- @SuppressLint ("Inlinedapi")
- protected void OnCreate (Bundle savedinstancestate)
- {
- super.oncreate (savedinstancestate);
- Setcontentview (R.layout.activity_main);
- Mlistview = (ListView) Findviewbyid (R.id.id_listview);
- Mswipelayout = (swiperefreshlayout) Findviewbyid (R.id.id_swipe_ly);
- Mswipelayout.setonrefreshlistener (this);
- Mswipelayout.setcolorscheme (Android. R.color.holo_blue_bright, Android. R.color.holo_green_light,
- Android. R.color.holo_orange_light, Android. R.color.holo_red_light);
- Madapter = New Arrayadapter<string> (this, Android. R.layout.simple_list_item_1, Mdatas);
- Mlistview.setadapter (Madapter);
- }
- public void Onrefresh ()
- {
- //LOG.E ("xxx", Thread.CurrentThread (). GetName ());
- //UI Thread
- Mhandler.sendemptymessagedelayed (Refresh_complete, 2000);
- }
- }
Well, at the end, I feel pretty good, so try it.
:
OK ~
SOURCE Click here to download
From: http://blog.csdn.net/lmj623565791/article/details/24521483
Android swiperefreshlayout Official dropdown Refresh Control Introduction