AndroidのRecyclerViewでのアイテムの再利用を禁止する方法はどうやって実装するのでしょうか。

以下の方法を使用して、RecyclerViewの再利用を禁止することができます:

  1. RecyclerViewのアダプター内で、getItemViewTypeメソッドをオーバーライドして、すべてのアイテムが異なるViewTypeを返すようにしてください。これにより、RecyclerViewは同じタイプのアイテムを再利用することがありません。
@Override
public int getItemViewType(int position) {
    return position;
}
  1. RecyclerViewのLayoutManagerで、setRecycleChildrenOnDetach(false)を設定すると、子Viewのリサイクルが禁止されます。
recyclerView.setLayoutManager(new LinearLayoutManager(context) {
    @Override
    public boolean supportsPredictiveItemAnimations() {
        return false;
    }

    @Override
    public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {
        //禁止回收子View
        setRecycleChildrenOnDetach(false);
        super.onLayoutChildren(recycler, state);
    }
});

上記の方法を使用すると、RecyclerViewの再利用効果を防止することができます。

コメントを残す 0

Your email address will not be published. Required fields are marked *


广告
広告は10秒後に閉じます。
bannerAds