安卓下拉刷新并取消的实现(超简单)

前言:最近报名了天津市的安卓大赛,在刷题时遇到一个问题。即下拉刷新的效果(刷新完成后修改页面数据)。在网上搜索了一番总算是找到了解决办法。话不多说,下面简单介绍一下SwiperRefreshLayout控件的使用。

1.在xml文件中添加SwiperRefreshLayout控件

<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
    android:id="@+id/swipe"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="#fff">
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>

2.为 SwiperRefreshLayout控件添加OnRefresh事件

SwipeRefreshLayout swipe =(SwipeRefreshLayout) findViewById(R.id.swipe);//根据ID获取SwiperRefreshLayout控件
swipe.setOnRefreshListener(LifeHelper.this);//为swipe添加OnRefresh事件(这里用到的是实现OnRefreshListener接口的方法)
public void onRefresh() {
    new Thread(new Runnable() {       
        @Override
        public void run() {
            try {
                Thread.sleep(2000);      //线程睡2秒
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(LifeHelper.this,"刷新成功!",Toast.LENGTH_LONG).show();  //2秒后提示刷新成功
                    swipe.setRefreshing(false);
                }
            });
        }
    }).start();
}

3.通过该问题的解决所得到的启发

下拉刷新是安卓开发中比较常用的功能,在新建线程以后一定不要忘了start()。在解决问题时一定要先动脑思考一下,解决不了的话再去网上搜索答案,这样虽然速度会比较慢一点,但是学到的东西更加扎实。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值