Android SwipeRefreshLayout



Android SwipeRefreshLayout是一个用于实现下拉刷新功能的布局控件。它可以在用户下拉视图时显示一个刷新的进度圈,并在刷新完成后自动隐藏。这个控件是Google官方提供的,因此使用起来非常简单和方便。

以下是一个基本的SwipeRefreshLayout的使用方法:

  1. 在XML布局文件中添加一个SwipeRefreshLayout控件,并将要刷新的视图(例如ListView或RecyclerView)作为其子视图:

<androidx.swiperefreshlayout.widget.SwipeRefreshLayout  
    android:id="@+id/swipe_refresh_layout"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent">  
  
    <ListView  
        android:id="@+id/list_view"  
        android:layout_width="match_parent"  
        android:layout_height="match_parent" />  
  
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
  1. 在Java代码中获取SwipeRefreshLayout实例,并设置监听器:

SwipeRefreshLayout swipeRefreshLayout = findViewById(R.id.swipe_refresh_layout);  
swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {  
    @Override  
    public void onRefresh() {  
        // 在这里执行刷新操作,例如重新加载数据  
    }  
});
  1. 在刷新操作完成后,调用SwipeRefreshLayout的setRefreshing(false)方法来隐藏刷新进度圈:

swipeRefreshLayout.setRefreshing(false);