我正在使用SharedPreference來保存從活動(A)在ListView中選擇的數據(字符串),每次只選擇一個,並保存通過SharedPreference,計劃是讀取並顯示在ListView中的活動(B)中的這些數據(以及過去選擇的所有較舊的數據)。使用SharedPreference永久保存數據我如何將數據添加到ArrayList
我怎樣才能保存和添加每一次被選中,並保持所有的老年人保存像ArrayList,添加每一個新的ListView所有歷史被選擇?
我正在使用SharedPreference來保存從活動(A)在ListView中選擇的數據(字符串),每次只選擇一個,並保存通過SharedPreference,計劃是讀取並顯示在ListView中的活動(B)中的這些數據(以及過去選擇的所有較舊的數據)。使用SharedPreference永久保存數據我如何將數據添加到ArrayList
我怎樣才能保存和添加每一次被選中,並保持所有的老年人保存像ArrayList,添加每一個新的ListView所有歷史被選擇?
您應該考慮使用SQLite數據庫而不是SharedPreferences。
如果你真的想使用SharedReference你必須創建2種方法(從字符串到\)您的數據轉換與解轉換,如:
static final String UNIQUE_SPLIT_VALUE = "<|>";
String arrayListToString(List<String> list) {
StringBuilder result = new StringBuilder();
for (String value : list) {
result.append(value);
result.append(UNIQUE_SPLIT_VALUE);
}
return result.toString();
}
List<String> stringToArrayList(String prefString) {
return Arrays.asList(prefString.split(UNIQUE_SPLIT_VALUE));
}
...
saveToPreferences(arrayListToString(myDataList));
myDataList = stringToArrayList(getDataFromPreferences());
另一種方式你可以達到相同的結果 - 序列化\反序列化您的數據\從文件。