Android studio 如果“级别”按钮不可见,当我单击“下一步”按钮时,“级别”按钮将可见并保存

Android studio 如果“级别”按钮不可见,当我单击“下一步”按钮时,“级别”按钮将可见并保存,android-studio,Android Studio,我正在制作一个游戏,如果他/她完成了第一个关卡,关卡2按钮将不可见,如果我退出游戏,则会保存关卡2按钮的可见性。在关卡1完成后执行此操作: btn_LEVEL2.setVisibility(View.VISIBLE); //making Level 2 button visible 保存到共享首选项:- SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", MODE_PRIVATE);

我正在制作一个游戏,如果他/她完成了第一个关卡,关卡2按钮将不可见,如果我退出游戏,则会保存关卡2按钮的可见性。

在关卡1完成后执行此操作:

btn_LEVEL2.setVisibility(View.VISIBLE); //making Level 2 button visible
保存到共享首选项:-

SharedPreferences pref = 
getApplicationContext().getSharedPreferences("MyPref", MODE_PRIVATE); 
Editor editor = pref.edit();
editor.putBoolean("level2Visibility", true);  //saving boolean
// Save the changes in SharedPreferences
editor.commit(); // commit changes
检索共享Pref数据:-

boolean visibility = pref.getBoolean("level2Visibility",false); //here false is the default value
更多示例:

更改您使用的可见性。设置可见性View.VISIBLE、View.INVISIBLE和View.GONE中的任一项

要存储简单数据而不是大数据,可以使用共享首选项。 要存储数据,您需要使用密钥来识别它

例如:

public static final String LEVEL = "level";
public static final String PREFERENCES = "preferences";
在MainActivity的onCreate方法中,您可以这样使用:

//to store level
getSharedPreferences(SHARED_PREFERENCES, Context.MODE_PRIVATE).edit().putInt(LEVEL, 2).apply();
//to get stored level
int level = getSharedPreferences(SHARED_PREFERENCES, Context.MODE_PRIVATE).getInt(LEVEL, 1);//note that 1 is default value here it will be used if you have not stored any value to it. It will be used by default. 

这就是存储数据所需的全部知识。如果您想了解更多信息,可以查看链接。它有一个很好的教程

抱歉,我是android studio的初学者,我不知道如何在共享首选项Thanks Boolean visibility=pref.getBooleanlevel2Visibility中保存可见性的代码,false;如何将其连接到btn_LEVEL2?btn_LEVEL2是Level 2按钮的变量,Level 2可见性是存储Level 2按钮状态的关键。您可以根据自己的选择对其命名。一旦级别1结束,使级别2可见,并调用共享pref函数。