如何将对象的ArrayList存储到SharedPreferences然后检索它?

时间:2014-08-24 15:28:30

标签: android arraylist sharedpreferences

我有一个ExpandableListView,用户可以选择属于不同类别的不同项目。他的选择存储在ArrayList<Selected_Group>中。这是Selected_Group对象的代码:

public class Selected_Group extends Group {

private int selected_group_id;
private int trip_id;
private int group_id;
private ArrayList<Selected_Item> arr_selected_items;
private int marked_counter = 0;

// Constructors...

// Getters & setters

// Other methods
}

请注意,Selected_Group对象还包含一个ArrayList - 该组的选定项目。

当活动停止时(例如,对于电话呼叫),我想将ArrayList存储在SharedPreferences中并在恢复时 - 检索它。此外,当用户点击“保存”按钮时 - 从SharedPreferences中删除存储的ArrayList。

有可能吗?如果是的话 - 怎么样?

1 个答案:

答案 0 :(得分:0)

为什么你不把它作为JsonArray?然后将其转换为String。之后你可以将这些String保存到SharedPreferences。下面是如何制作JsonArray并将其转换为字符串:

JsonArray jsArray = new JsonArray(arr_selected_items);
String strArray = jsArray.toString();