我坚持使用此代码。 我想用自定义适配器构建一个列表视图。 我将从SharedPreferences
中读取数据代码正常工作:
List<Data> list = Arrays.asList(
new Data(910000, "Name", "Address", 59855, "City", "Tel", "Coms", -8860075),
new Data(958568, "Name 2", "My home", 985, "Somewhere","Tel", "", -8860075),
new Data(058460, "Name 3", "my work", 2584, "There", "Tel", "", -8860075)
);
现在,我预定了3个订单。 但是用户会添加更多的订单,我不知道总数(准确的说,我会在共享偏好中保存数据的总数,我会在以后阅读)
如何在Arrays.asList中添加for循环?
答案 0 :(得分:1)
List<Data> list = new ArrayList<>();
Data data1 = new Data(910000, "Name", "Address", 59855, "City", "Tel", "Coms", -8860075);
Data data2 = new Data(958568, "Name 2", "My home", 985, "Somewhere","Tel", "", -8860075);
list.add(data1);
list.add(data2);
每当您获得新数据时,请创建新的Data对象并添加到列表中
答案 1 :(得分:0)
首先创建一个列表:
List<Data> list = new Arraylist<Data>();
当您的用户向您的列表添加somethig时,将其添加到数组中:
list.add(new Data(910000, "Name", "Address", 59855, "City", "Tel", "Coms", -8860075))
答案 2 :(得分:0)
以下是我对这个问题的理解。
1)您在共享首选项中有预定义数据。
2)您想将数据转换为对象列表(比如联系人数据)。
我的建议是,使用SharedPreferences的getAll方法。
Map<String, Data> contacts = sharedPreferences.getAll();
List<Data> contactsList = new ArrayList<>();
for(String contact: contacts.keySet()) {
contactsList.add(contacts.get(contact));
}
//Process your list now in whatever way you want.
希望这会有所帮助。