所以我有arraylist modelData
在一些活动中使用sqlite数据库填充recyclelerview。
现在在我的MainActivity
我想要一个来自modelData
的字符串arraylist!
到目前为止做了什么..
// inside the onCreate of MainActivity
//code ..
db = new DBHandler(this, null, null, 1);
modelData = new ArrayList<AzkarModel>();
modelData = db.getDataFromDB();
for (AzkarModel o : modelData) {
ArrayList<String> names = new ArrayList<>();
names.add(o.getName());
}
for (int i = 0; i< modelData.size();i++){
names.add(modelData.get(i).getName());
Log.i("The List Log", names);
}
两个问题
1)[FIXED] names
arraylist在第一次和结束时两次显示相同的元素
I/ The List Log: [Mike, John, Sam, Nora, Mike]
2) arraylist names
没有更新..!当我从回收站添加/编辑/删除并返回MainActivity
我没有看到新的更改,除非我关闭应用程序然后再打开它!我无法使用notifyDataSetChanged
,因为此处没有适配器。!
答案 0 :(得分:2)
获得数组列表对象后,在循环中填充
ArrayList<String> modelNames = new ArrayList<>();
for (AzkarModel model : modelData) {
modelNames.add(model.getName());
}
现在你有一个包含模型名称的数组列表。关于第二个问题,请使用recyclerview适配器here,您可以找到一个很好的教程。