RecyclerView中的RecyclerView:ItemDecoration

RecyclerView in RecyclerView: ItemDecoration

我正在使用 recyclerview(垂直 LinearLayout)和不同的 viewholders,其中一个有另一个 RecyclerView(水平 LL)。在第二个 recyclerView 中,我使用 ItemDecoration 为其除第一个以外的所有项目添加左边距。

与我的问题相关的第一个RecyclerViewonBindViewHolder中的代码是:

RecyclerView mRecyclerView = holder.mRecyclerView;
mRecyclerView.addItemDecoration(new SpaceLeftItemDecoration(5));
mRecyclerView.setAdapter(new MyAdapter(mDataSet, context));
mRecyclerView.setLayoutManager(new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false));

每次执行此代码时,都会将一个新的 ItemDecorations 添加到 recyclerview。如果我上下滚动 3 或 4 次,第二个 recyclerview 中项目之间的间距非常明显。

所以我的问题是,我怎么知道 RecyclerView 是否已经有一个 ItemDecoration

谢谢。

是的,将此代码移至 createViewHolder,因此它只会被调用一次。