我将ArrayList从Activity传递给RecyclerView适配器。但也改变了适配器中活动变化值的价值。我怎么能避免这个?
List<Object> objectList = Collections.synchronizedList(new ArrayList<Object>());
public RecyclerViewAdapter(Context context,List<Object> commentDatas) {
mContext = context;
commentDataList = commentDatas;
}
答案 0 :(得分:2)
因为您没有显示您的代码,所以我将使用示例
显示我的代码创建适配器时,您可以通过适配器的构造函数将数据发送到适配器,如下所示:
List<MyObject> list;
public RcvAdapter(List<MyObject> list, Context context) {
this.list = list;
this.context = context;
}
如果您想解决问题,请执行以下操作:
List<MyObject> list = new ArrayList<>();
public RcvAdapter(List<MyObject> list, Context context) {
this.list.addAll(list);
this.context = context;
}
希望这有帮助!