前言:最近报名了天津市的安卓大赛,在刷题时遇到一个问题。即下拉刷新的效果(刷新完成后修改页面数据)。在网上搜索了一番总算是找到了解决办法。话不多说,下面简单介绍一下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()。在解决问题时一定要先动脑思考一下,解决不了的话再去网上搜索答案,这样虽然速度会比较慢一点,但是学到的东西更加扎实。