android - RecyclerView 中的 RecyclerView : ItemDecoration

标签 android android-recyclerview

我正在使用具有不同 viewholdersrecyclerview(具有垂直 LinearLayout),其中一个有另一个 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,因此它只会被调用一次。

关于android - RecyclerView 中的 RecyclerView : ItemDecoration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29995871/

相关文章:

android - 在 R.Raw 中打开文件音频

android - 你能观察到 Android 系统属性的变化吗?

android - 将焦点放在 recyclerview 项目上

android - 在 RecyclerView 中获取微调器选择的项目

android - 如何通过 CoordinatorLayout 将 TextView 移动到 Toolbar 中?

android - FCM 推送通知在某些设备上不起作用

android - java.io.IOException : BufferedInputStream is closed in Android 2. 3

android - 将 Eclipse 项目导入 Android Studio 时出现问题

android - 上传图片时 Firebase 应用程序崩溃

android - 在回收站中单击查看错误的位置