如何在Android中保存(用户创建的)动态布局?

如何在Android中保存(用户创建的)动态布局?,android,dynamic,save,Android,Dynamic,Save,我在主屏幕上有一个按钮,每次按下它时都会添加一个编辑文本字段(为了最佳实践,我将其限制为20)。它基本上是一个小型预算应用程序。我希望用户在其中一个字段中填写X金额的美元。然后,当他们准备好了,下次再回到应用程序,创建的EditText仍然充满了值。我知道如何利用SharedPerference来保持价值。但是,当用户返回时,我不知道如何保存新创建的EditText字段 我将实际展开,并有一个按钮和一个日期选择器与每个EditText字段关联,因此很快单击按钮将创建三个对象,而不仅仅是一个。但是

我在主屏幕上有一个按钮,每次按下它时都会添加一个编辑文本字段(为了最佳实践,我将其限制为20)。它基本上是一个小型预算应用程序。我希望用户在其中一个字段中填写X金额的美元。然后,当他们准备好了,下次再回到应用程序,创建的EditText仍然充满了值。我知道如何利用SharedPerference来保持价值。但是,当用户返回时,我不知道如何保存新创建的EditText字段


我将实际展开,并有一个按钮和一个日期选择器与每个EditText字段关联,因此很快单击按钮将创建三个对象,而不仅仅是一个。但是我想先让其中一个工作,然后再把这个原则应用到其他的工作中。有什么建议吗

听起来像是SQLite数据库的一个很好的候选者

例如,我使用SQLite数据库来保留和调用用户在我的应用程序中安排的小部件的坐标和类型


请注意,您永远不希望尝试存储和调用实际的
EditText
视图
对象本身。在数据库中,您需要设计自己的表格式,以适合需要存储的信息类型。如果您只需要保留一系列
EditText
字段的状态,那么这可能很简单,就像一个表中只有一列,每行包含一个字符串值。要从该数据库再次构建UI,您需要循环并创建一个新的
EditText
实例,并从表中设置每个实例的文本

您必须使用Android
Parcelable
接口,请参阅了解如何实现它,请参阅我在StackOverflow上询问的内容,它有一个很好的答案。

好的,非常感谢。看起来我拿错角度了。虽然我很想简化这一点,并在SQLite上使用SharedReferences,但至少你让我走上了正确的道路!我很想看看其他人是如何尝试的。
SharedReferences
可能是一种更容易开始并启动运行的方法。然而,
SharedReferences
实际上用于存储少量特定的key=value数据;它根本不适合数组数据。因此,如果您只有一个
EditText
,那么您可以有一个像
mFieldValue
这样的prefs键,但是对于许多
EditText
s,您必须使用像mFieldValue 1、mFieldValue 2等键,或者将所有
EditText
s的值分组到一个值字符串中。任何一种方法都是混乱的,就像把一个方形的钉子放进一个圆形的洞里,这就是SQLite数据库的来源。根据您的推荐,在这里做一些研究,我发现SQLite看起来是一种可行的方法!谢谢你的帮助。