要在应用关闭后保持布尔值不变,可以使用SharedPreferences。SharedPreferences是一个简单的键值存储系统,可用于存储和检索数据。
在以下示例中,我们将使用SharedPreferences存储布尔值。要保存布尔值,我们将使用SharedPreferences.Editor的putBoolean方法。要检索布尔值,我们将使用SharedPreferences的getBoolean方法。
首先,在您的活动中获取SharedPreferences实例:
SharedPreferences sharedPreferences = getSharedPreferences("MySharedPrefs", MODE_PRIVATE);
然后,要保存布尔值,请像这样使用putBoolean:
SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putBoolean("myBooleanKey", true); editor.apply();
现在,布尔值将存储在SharedPreferences中,即使应用关闭也不会丢失。要检索布尔值,请使用以下代码:
boolean myBooleanValue = sharedPreferences.getBoolean("myBooleanKey", false);
这将检索名为“myBooleanKey”的布尔值,并将其存储在myBooleanValue中。如果SharedPreferences中没有与该键对应的值,则返回false。
完整示例代码如下:
public class MainActivity extends AppCompatActivity {
private SharedPreferences sharedPreferences;
private boolean myBooleanValue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sharedPreferences = getSharedPreferences("MySharedPrefs", MODE_PRIVATE);
myBooleanValue = sharedPreferences.getBoolean("myBooleanKey", false);
}
@Override
protected void onPause() {
super.onPause();
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("myBooleanKey", myBooleanValue);
editor.apply();
}
}
在onPause方法中,我们将存储布尔值。在onCreate方法中,我们将检索布尔值。这将确保布尔值在应用关闭后保持不变。