我正在创建一个应用程序,它将获取用户输入的变量并将它们(最终)上传到数据库。有一系列活动要求用户输入各种值。我不知道继续存储这些变量的最佳方法。
现在,我已为此活动中的每个变量设置了一系列字符串,我需要保存。
String ePercent, eIntensity, pPercent, pIntensity;
然后,当用户按下继续按钮转到下一个活动时,我想存储这些输入的变量
bContinue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
eIntensity = eERHIntensity.getText().toString();
ePercent = eERHPercent.getText().toString();
pIntensity = ePRHIntensity.getText().toString();
pPercent = ePRHPercent.getText().toString();
Intent nextActivity = new Intent(getApplicationContext(), TumorSize.class);
startActivity(nextActivity);
}
});
现在存储这些变量的最佳路径是什么,以便它们在整个应用程序会话中可用(它们需要在以后的其他活动中用于计算),然后在某些时候也可以上传到数据库说进行计算。
我已经尝试查找各种“存储用户输入的变量”,“为另一个活动保存值”,但似乎缺少一些必要的词汇来找到答案。
如果要将该字符串发送到下一个活动,可以使用intent.putString()方法并在下一个活动中获取该字符串,则应使用getIntent.getStringExtra()方法。我在下面给出了一个示例,说明如何使用intent将数据从一个活动传递到另一个活动:
在您的第一个活动中:
bContinue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
eIntensity = eERHIntensity.getText().toString();
ePercent = eERHPercent.getText().toString();
pIntensity = ePRHIntensity.getText().toString();
pPercent = ePRHPercent.getText().toString();
Intent nextActivity = new Intent(getApplicationContext(), TumorSize.class);
nextActivity.putString("eIntensity",eIntensity);
nextActivity.putString("ePercent",ePercent);
nextActivity.putString("pIntensity",pIntensity);
nextActivity.putString("pPercent",pPercent);
startActivity(nextActivity);
}
});
在你的第二个活动中:
Intent intent = getintent();
String eIntensity = intent.getStringExtra("eIntensity");
String ePercent = intent.getStringExtra("ePercent");
String pIntensity = intent.getStringExtra("pIntensity");
String pPercent = intent.getStringExtra("pPercent");
通过这种方式,您可以使用intent将任何数据传递给下一个活动。您也可以使用SharedPreferences。通过使用SharedPreferences,您可以从项目的任何活动中获取数据。在谷歌上搜索它。