我正在用java构建一个多选题故事游戏。有许多按钮(选项)可以引导您进入另一个改变故事的活动。显然,当您再次关闭并打开应用程序时,您必须从第一个活动开始。你知道可以保存进度的东西(带变量的按钮)还是别的东西?
答案 0 :(得分:0)
如果你想在android中存储更多变量,你必须使用数据库。如果您想存储一个或更少数量的变量,可以使用Android - 共享首选项enter link description here 在您重新安装或更新应用程序之前,它不会更改变量值。
答案 1 :(得分:0)
您可以简单地使用SharedPreferences
,每次更改进度时更新保存的值,如下所示:
SharedPreferences sharedPref = context.getSharedPreferences("TheFileName", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString("currentStory", currentStory); // store currentStory or currentProgress here
editor.apply();
现在,当应用程序打开时,您可以查看当前的故事/进度,例如:
sharedPref.getString("currentStory","");
然后根据进度打开相应的活动。
以防万一,如果你想删除SharedPreferences
中的任何密钥,你可以这样做:
sharedPref.edit().remove("shared_pref_key").commit();
或者,要清除所有数据:
sharedPref.edit().clear().commit();
您可以像这样在Activity
开始切换活动:
String currentStory = sharedPref.getString("currentStory","");
if(currentStory.equals("story1")){
startActivity(new Intent(...)) // Activity for story1
}else if(currentStory.equals("story2")){
startActivity(new Intent(...)) // Activity for story2
}
...
# similarly for other stories