如何在共享偏好设置中存储动态添加的修改文字的值

时间:2015-10-24 10:17:17

标签: android android-edittext android-sharedpreferences

我的问题是,我正在动态创建以下视图。

  1. 编辑文字(组织名称)
  2. 具有垂直方向的线性布局,包含编辑文本(作业1),编辑文本(作业2),编辑文本(作业3),...等等,具体取决于用户单击“添加作业”按钮。
  3. 按钮(添加作业)单击此按钮可在上述线性布局中添加编辑文本作业,其中包含特定组织的所有作业。
  4. 按钮(添加组织)点击此按钮再次创建三个视图,即。组织名称(编辑文本),线性布局(编辑文本(作业1),编辑文本(作业2),编辑文本(作业3)...等),按钮(添加作业)。
  5. 我的问题是如何以结构化方式存储每个编辑文本的值,如下所示。

    组织1

    1. 工作1
    2. 工作2
    3. Job 3
    4. .....
    5. .....
    6. .....
    7. 组织2

      1. 工作1
      2. 工作2
      3. .....
      4. .....
      5. 为什么我要将值存储在共享首选项中是因为,一旦用户在输入有关组织和作业的所有详细信息后导航到其他页面,然后如果他/她返回到同一页面,则所有之前输入的详细信息(组织和工作详情)必须在那里。

        请建议我怎么做,任何想法都将受到高度赞赏。

        感谢。

1 个答案:

答案 0 :(得分:0)

我会创建一个类似于它的组织类:

Class Organization {

      String name;
      ArrayList<String> jobsList;
}

然后我会从您的UI添加所需的信息,序列化对象并将其保存到SharedPerfrences:

      Gson gson = new Gson();
      String dataToSave = gson.toJson(organization);
      //save the data using SharedPerfrences