android 自帶的下拉刷新控件,含Demo(SwipeRefreshLayout控件)

SwipeRefreshLayout控件使用方法

android.support.v4.widget.SwipeRefreshLayout


界面設計:


<android.support.v4.widget.SwipeRefreshLayout
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin"
   android:id="@+id/swipe">
   <ScrollView
       android:layout_width="match_parent"
       android:layout_height="match_parent">
       <RelativeLayout
           android:layout_width="match_parent"
           android:layout_height="match_parent">

           <TextView
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:text="Random number:"
               android:id="@+id/lbl"/>

           <TextView
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:id="@+id/rndNum"
               android:layout_toRightOf="@id/lbl"/>


           <TextView
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_below="@id/lbl"
               android:layout_centerHorizontal="true"
               android:layout_marginTop="20dp"
               android:text="Swipe to Refresh"
               style="@android:style/TextAppearance.Medium"/>



       </RelativeLayout>
   </ScrollView>
</android.support.v4.widget.SwipeRefreshLayout>



java代碼:

final SwipeRefreshLayout swipeView = (SwipeRefreshLayout) findViewById(R.id.swipe);
final TextView rndNum = (TextView) findViewById(R.id.rndNum);
//設置刷新顏色
swipeView.setColorSchemeResources(android.R.color.holo_blue_light);
//設置刷新監聽器
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
    @Override
    public void onRefresh() {
        swipeView.setRefreshing(true);
        Log.d("Swipe", "Refreshing Number");
        //Handler更新界面,延時3000毫秒
        ( new Handler()).postDelayed(new Runnable() {
            @Override
            public void run() {
                //設置刷新結束
                swipeView.setRefreshing(false);
                double f = Math.random();
                rndNum.setText(String.valueOf(f));
            }
        }, 3000);
    }
});




實現效果:

wKiom1ZH8NiBzvPSAABhursBs0o028.png

wKioL1ZH8Sezm7hsAABLzIguRJc396.png



SwipeRefreshLayoutDemo



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章