如何禁用拉动刷新,当刷卡回收物查看项目?

问题描述 投票:0回答:1

我在SwipeRefreshLayout中使用了recyclerview,当我开始滑动以删除我的回收器视图项时,它将激活拉动刷新。我想在开始滑动时禁用拉动刷新并启用完成滑动。我使用ItemTouchHelper类来检测滑动动作

这是我的.xml文件

<?xml version="1.0" encoding="utf-8"?>
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout 
   android:id="@+id/swipeRefreshLayout"       
   android:layout_width="match_parent"
   android:layout_height="match_parent">

  <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

      <androidx.recyclerview.widget.RecyclerView
          android:id="@+id/recyclerView"
          android:layout_width="match_parent"
          android:layout_height="match_parent" />

    </RelativeLayout>

</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>

而且,这个Java文件,

 new ItemTouchHelper(new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT) {
        @Override
        public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder target) {
            return false;
        }

        @Override
        public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int direction) {

        }
    }).attachToRecyclerView(recyclerView);
android android-recyclerview recyclerview-layout itemtouchhelper
1个回答
0
投票

您可以在onMove方法中禁用刷新布局

swiperefreshLayout.setEnabled(false);

然后在onSwiped方法中启用它

swiperefreshLayout.setEnabled(true);
© www.soinside.com 2019 - 2024. All rights reserved.