`
iaiai
  • 浏览: 2196003 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android 官方的下拉刷新: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>

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener;
import android.widget.TextView;


public class MainActivity extends Activity {
	
	private SwipeRefreshLayout swipe_container;
	private TextView tv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        swipe_container = (SwipeRefreshLayout) findViewById(R.id.swipe_container);
        tv = (TextView)findViewById(R.id.textView1);
        
        swipe_container.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);
        swipe_container.setOnRefreshListener(new OnRefreshListener() {
            @Override
            public void onRefresh() {
                tv.setText("正在刷新");
                new Handler().postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        tv.setText("刷新完成");
                        swipe_container.setRefreshing(false);
                    }
                }, 5000);
            }
        });
    }

}


在listView滑动的时候会有些问题,增加listview的一个监听,如下:
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
			@Override
			public void onScrollStateChanged(AbsListView absListView, int i) {
			}
			@Override
			public void onScroll(AbsListView absListView, int firstVisibleItem,
					int visibleItemCount, int totalItemCount) {
				if (firstVisibleItem == 0)
					swipe_container.setEnabled(true);
				else
					swipe_container.setEnabled(false);
			}
		});
  • 大小: 84.8 KB
分享到:
评论

相关推荐

    Android官方下拉刷新组件——swipeRefreshLayout

    在Android开发中,`SwipeRefreshLayout`是Google官方提供的一款用于实现下拉刷新功能的组件,它使得用户可以通过从顶部向下滑动来触发刷新操作。这个组件通常与`RecyclerView`或`ListView`等滚动视图结合使用,以...

    Google官方下拉刷新组件SwipeRefreshLayout

    SwipeRefreshLayout字面意思就是下拉刷新的布局,继承自ViewGroup,在support v4兼容包下,但必须把你的support library的版本升级到19.1。 提到下拉刷新大家一定对ActionBarPullToRefresh比较熟悉,而如今google...

    Google官方下拉刷新控件SwipeRefreshLayout

    在Android开发中,`SwipeRefreshLayout`是Google提供的一款官方下拉刷新控件,它使得开发者可以轻松地在应用中添加下拉刷新的功能。这个控件主要用于承载一个子View,当用户下拉该子View时,会触发刷新动作,通常与`...

    Google官方下拉刷新组件SwipeRefreshLayout(Google最新控件)

    **谷歌官方下拉刷新组件SwipeRefreshLayout详解** 在Android开发中,提供流畅的用户体验是至关重要的,其中下拉刷新功能已经成为许多应用的标准特性。Google官方为了方便开发者实现这一功能,推出了...

    Android高级应用源码-Google官方下拉刷新组件SwipeRefreshLayout(Google最新控件).zip

    【Android高级应用源码-Google官方下拉刷新组件SwipeRefreshLayout】是Google为Android开发者提供的一种先进的用户界面组件,主要用于实现下拉刷新的功能。这个组件在许多现代Android应用中被广泛使用,因为它提供了...

    Android官方下拉刷新控件SwipeRefreshLayout使用详解

    在Android应用开发中,下拉刷新功能已经成为许多应用的标准特性,Android官方提供了SwipeRefreshLayout控件,使得开发者可以方便地集成这一功能。本文将详细介绍SwipeRefreshLayout的使用方法,并通过实例展示其工作...

    安卓下拉上拉刷新相关-Google官方下拉刷新组件SwipeRefreshLayout(Google最新控件).rar

    `SwipeRefreshLayout`是Google官方提供的一款用于实现下拉刷新功能的组件,它为许多应用提供了统一且流畅的刷新体验。这个压缩包包含了一些与`SwipeRefreshLayout`相关的源码和资源文件,供开发者学习和参考。 `...

    SwipeRefreshLayout Android系统自带下拉刷新demo

    在Android开发中,`SwipeRefreshLayout` 是一个非常重要的组件,它是Android SDK中内置的一个控件,主要用于实现下拉刷新的功能。这个控件的设计目的是让用户在查看列表或网格内容时能够轻松地更新数据。下面我们将...

    Android自带下拉刷新的代码例子

    总结一下,`SwipeRefreshLayout`是Android原生提供的一个强大的下拉刷新组件,它可以轻松地与滚动视图配合使用,提供一致的用户体验。通过设置监听器和自定义刷新逻辑,你可以轻松地将下拉刷新功能集成到自己的应用...

    Google官网下拉刷新SwipeRefreshLayout

    在Android开发中,下拉刷新(Pull-to-Refresh)功能是一项常见的用户交互设计,它允许用户通过在列表顶部向下拖动来更新数据。Google为此提供了一个官方的组件——`SwipeRefreshLayout`,它使得开发者能够轻松地在...

    Android_SwipeRefreshLayout

    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' ``` 2. **XML布局** 在XML布局文件中添加SwipeRefreshLayout,并将需要实现刷新功能的视图作为其子View: ```xml &lt;androidx....

    android列表下拉刷新

    在本项目中,你将找到一个可以直接运行的Android下拉刷新的代码实现。 下拉刷新的实现通常涉及到两个关键组件:SwipeRefreshLayout和RecyclerView(或ListView)。SwipeRefreshLayout是Android SDK提供的一种布局...

    Android应用源码 ListView下拉刷新 Demo

    1. **SwipeRefreshLayout**:Android SDK 提供了一个名为SwipeRefreshLayout的布局容器,它是实现下拉刷新的关键。这个容器可以包含一个子视图,通常是一个ListView或者RecyclerView。当用户从顶部下拉时,...

    android listview 下拉刷新 动态加载数据 图文混排

    首先,我们要引入SwipeRefreshLayout库,它是Android SDK提供的一个下拉刷新框架。在`build.gradle`文件中添加以下依赖: ```groovy dependencies { implementation 'com.android.support:support-v4:版本号' } ``...

    Android listView下拉刷新上拉刷新带阻尼效果-IT计算机-毕业设计.zip

    这个Demo中可能包含了SwipeRefreshLayout组件的使用,它是Android SDK提供的一种实现下拉刷新的标准方式。SwipeRefreshLayout包含一个子View,通常是一个滚动视图如ListView或RecyclerView,当用户下拉时,...

    android原装下拉刷新控件--SwipeRefreshLayout

    在Android开发中,`SwipeRefreshLayout`是谷歌官方提供的一个用于实现下拉刷新功能的控件。这个控件允许用户通过从顶部向下滑动来触发刷新操作,常见于新闻、社交媒体等应用的列表视图中。下面我们将深入探讨`...

    Androidstudio下ListView下拉刷新

    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' } ``` 然后,同步Gradle项目以下载并引入新库。 4. **布局设计** 在布局文件(例如activity_main.xml)中,将SwipeRefreshLayout作为...

    android lsitview下拉刷新和加载更多效果

    implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' } ``` 2. 布局设置 在布局文件中,将SwipeRefreshLayout作为ListView的父容器,并将ListView作为其子视图: ```xml &lt;androidx....

Global site tag (gtag.js) - Google Analytics