Android下拉刷新官方版
作者:wzben 时间:2021-11-25 06:52:51
网上关于下拉刷新的文章也不少,不过都太长了。恰好发现了官方的下拉刷新库,而且效果还是不错的,简洁美观,用得也挺方便。
下面是效果图:
我的好友原来是空的,刷新后多了两个。
使用还是挺方便的,在布局文件中加入SwipeRefreshLayout ,这个就是下拉刷新的布局。
我在SwipeRefreshLayout的里面还加入了一个ListView 因为我主要用下拉刷新更新了listView里面的内容 。
布局文件:
<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>
代码写到这里后,只要在主界面向下滑动到顶部,就会出现下拉刷新了。
然后我们要实例化这个下拉刷新布局,设置好它在刷新时要干什么,完成刷新后,旋转的图标要消失。
mSwipeLayout = (SwipeRefreshLayout) findViewById(R.id.haoyouliebiaoshuaxin);//实例化
//handler 用来更新UI的
haoyouhandler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
//要做的事
Item i1 = new Item();
i1.name = "呵呵";
i1.account = 25566;
haoyou.add(i1);
Item i2 = new Item();
i2.name = "哈哈";
i2.account = 25577;
haoyou.add(i2);
haoyouadpter = new liebiaoAdapter(MainActivity.this, R.layout.liebiao, haoyou);
haoyoulist.setAdapter(haoyouadpter);
//取消更新的动画
mSwipeLayout.setRefreshing(false);
}
};
//设置 *
mSwipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
//正在更新的时候执行什么代码
public void onRefresh() {
new Thread(new Runnable() {
@Override
public void run() {
//等待一秒
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
//发消息给handler更新UI
Message ok = new Message();
haoyouhandler.sendMessage(ok);
}
}).start();
我是在 * 的onRefresh函数中,等待一秒,然后发消息给Handler去更新UI,更新完后再取消更新。
标签:Android,下拉刷新
0
投稿
猜你喜欢
彻底解决tomcat中文乱码问题方案
2023-06-25 17:24:46
C#操作XML文件步骤
2021-11-04 21:51:44
从汇编码分析java对象的创建过程(推荐)
2023-06-09 18:05:17
Android WebView基础应用详解
2023-09-30 07:36:46
C#中子类调用父类的实现方法
2023-08-17 09:09:52
Spring注解@DependsOn解析
2022-01-11 08:20:35
spring中bean的生命周期详解
2021-11-29 23:31:02
解决C# winForm自定义鼠标样式的两种实现方法详解
2021-07-15 17:10:46
使用SpringBoot 配置Oracle和H2双数据源及问题
2023-10-04 14:06:11
android实现图片闪烁动画效果的两种实现方式(实用性高)
2022-06-29 14:18:32
Android中ToggleButton开关状态按钮控件使用方法详解
2022-11-10 06:24:35
Android创建简单发送和接收短信应用
2022-01-04 18:31:08
Java基于栈方式解决汉诺塔问题实例【递归与非递归算法】
2023-04-10 08:05:02
java用户名密码验证示例代码分享
2021-10-14 08:16:14
Java同步锁Synchronized底层源码和原理剖析(推荐)
2023-09-25 08:36:22
c# 如何实现图片压缩
2022-02-10 00:46:31
RandomAccessFile简介_动力节点Java学院整理
2021-12-18 09:02:15
JVM常用垃圾收集器详细解说
2023-02-15 02:19:49
C#中的事务用法实例分析
2022-04-03 05:23:37
Java 实现并发的几种方式小结
2022-10-23 02:54:46