我一直在讨论如何从不同的布局中保存用户数据。我的应用程序设置为从5个不同的页面收集用户数据,然后在最后一页上有一个按钮,用于保存所有5个页面中的数据。
我创建了所有5个布局以及类,并通过id设置内容视图以引用XML布局但我似乎无法弄清楚如何在最后一页上保存所有数据的保存按钮。从一个布局保存数据我可以但不能从不同的布局中保存。
答案 0 :(得分:0)
有很多方法可以做到这一点取决于你的要求。
您可以使用共享首选项来保存数据,并在保存数据时清除该数据。在用户关闭应用程序或应用程序时,无论如何用户的数据都将丢失。
如果不需要在app close上保留数据,可以使用静态类来存储这些值。
这种方式不是一种有效的方法,但可以使用。如果您将活动用作页面,则将数据一个目标传递给另一个,直到保存按钮活动。
答案 1 :(得分:0)
您可以做的是将数据从第一页发送到第二页,依此类推,直到您使用按钮到达最后一页,然后保存您通过意图收集的所有数据
Intent i = new Intent(this, SecondActivity.class);
String strName = null;
i.putExtra("STR", strName);
您可以使用上述代码发送数据,并使用以下代码接收数据并存储在变量中并发送到下一个活动,直到您到达上一个活动,然后保存所有数据
String newString;
Intent in= getIntent();
newString = in.getStringExtra("STR");
答案 2 :(得分:0)
另一种方法是创建一个自定义Application类,扩展Application并将其添加到AndroidManifest.xml。
在课程中,你可以编写适当的getter和setter。
基本示例:
public class DataApplication extends Application{
private String a;
public String getData(){
return a;
}
public void setData(String data){
a=data;
}
}
要访问活动中的数据,请执行以下操作:
DataApplication d;
d = (DataApplication) getApplicationContext();
编辑:一旦您的申请被终止,所有数据都将消失。