Java Android studio,关闭应用程序时记住输入
我们这学期一直在做这个啤酒应用程序,你可以添加饮料作为标准,然后按下按钮,它会计算啤酒并为你添加一笔金额 我们遇到的一个问题是,当我们按下按钮时,计数被汇总。当我们在模拟器上关闭应用程序时,它不会记住输入。有办法解决这个问题吗 基本上,我们希望它记住Msum和Mcount,即使在应用程序关闭或重新打开之后 代码是: 一个文件Java Android studio,关闭应用程序时记住输入,java,android,Java,Android,我们这学期一直在做这个啤酒应用程序,你可以添加饮料作为标准,然后按下按钮,它会计算啤酒并为你添加一笔金额 我们遇到的一个问题是,当我们按下按钮时,计数被汇总。当我们在模拟器上关闭应用程序时,它不会记住输入。有办法解决这个问题吗 基本上,我们希望它记住Msum和Mcount,即使在应用程序关闭或重新打开之后 代码是: 一个文件 public class ResourceManager { private static ResourceManager singleton = new Reso
public class ResourceManager {
private static ResourceManager singleton = new ResourceManager();
private ResourceManager() {}
public static ResourceManager getInstance() {
return singleton;
}
protected static int cost_beer = 0;
protected static int cost_drink = 0;
protected static int count = 0;
protected static int sum = 0;
}
主文件:
countButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
ResourceManager.getInstance().count++;
ResourceManager.getInstance().sum += ResourceManager.getInstance().cost_beer;
countTextView.setText("Du har drukket " + ResourceManager.getInstance().count + " enheter!");
sumTextView.setText("Sum:" + ResourceManager.getInstance().sum + "!");
}
});
drinkButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
ResourceManager.getInstance().count++;
ResourceManager.getInstance().sum += ResourceManager.getInstance().cost_drink;
countTextView.setText("You have been drinking " + ResourceManager.getInstance().count + " units!");
sumTextView.setText("Sum:" + ResourceManager.getInstance().sum + "!");
}
});
resetButton.setOnClickListener(new View.OnClickListener() {
public void onClick (View view) {
ResourceManager.getInstance().sum = 0;
ResourceManager.getInstance().count = 0;
countTextView.setText("You have been drinking " + ResourceManager.getInstance().count + " units!");
sumTextView.setText("Sum:" + ResourceManager.getInstance().sum + "!");
}
});
查看
SharedReferences
。这可能对你有帮助。它以键值对的形式存储数据
有关示例,请参见StackOverflow链接
要保存数据,请执行以下操作:
// MY_PREFS_NAME - a static String variable like:
//public static final String MY_PREFS_NAME = "MyPrefsFile";
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", "Elena");
editor.putInt("idName", 12);
editor.commit();
要检索:
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
String name = prefs.getString("name", "No name defined");//"No name defined" is the default value.
int idName = prefs.getInt("idName", 0); //0 is the default value.
}
以下是官方文件:
另外还有一个示例,帮助您查看
共享参考资料。这可能对你有帮助。它以键值对的形式存储数据
有关示例,请参见StackOverflow链接
要保存数据,请执行以下操作:
// MY_PREFS_NAME - a static String variable like:
//public static final String MY_PREFS_NAME = "MyPrefsFile";
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", "Elena");
editor.putInt("idName", 12);
editor.commit();
要检索:
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
String name = prefs.getString("name", "No name defined");//"No name defined" is the default value.
int idName = prefs.getInt("idName", 0); //0 is the default value.
}
以下是官方文件:
另一个示例帮助您使用SharedReferences。使用SharedReferences。