如何遍历 RecyclerView 中的所有 views/items?

How do iterate through all the views/items in a RecyclerView?

我需要遍历 RecyclerView 中的所有 RadioGroups

我试过的代码:

for(int i=0;i<recyclerView.getAdapter().getItemCount();i++)
  {
     radioGroup = recyclerView.findViewHolderForAdapterPosition(i).itemView.findViewById(R.id.radio_group);
  }

但是 findViewHolderForAdapterPosition(i) returns null 对于屏幕外的 RadioGroups 并给我一个 NullPointerException.

我如何遍历所有这些?

滚动时 RecyclerView 视图 created/destroyed 根据需要。您不能指望它们可用。

我假设您正在尝试检索选择状态。最好将其存储在适配器中的对象中,并在单击单选按钮时更新其值。

然后您可以在您的适配器中实现一个 getItem 方法,returns 对象及其当前选择状态。