我的应用程序有一个switchview。它用来锁定一些消息。它工作正常,但问题是在切换状态。如果我在切换意味着消息被锁定,在我关闭应用程序后,当我重新启动应用程序时,其状态更改为上一个,表示消息已解锁。
我想保存先前拖动开关的状态。这是我的代码:
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked) {
try{
Database_SMS info = new Database_SMS(this);
String data = info.getData();
info.close();
Global.lock = true;
Toast.makeText(getApplicationContext(), "Message is locked", Toast.LENGTH_LONG).show();
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
// Vibrate for 500 milliseconds
v.vibrate(500);
}catch(Exception e)
{
Toast.makeText(getApplicationContext(), "Message is not selected", Toast.LENGTH_LONG).show();
}
}
else {
Global.lock = false;
Toast.makeText(getApplicationContext(), "Message is unlocked", Toast.LENGTH_LONG).show();
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
// Vibrate for 500 milliseconds
v.vibrate(500);
}
}
请帮帮我。
答案 0 :(得分:1)
您应该使用SharedPreferences保存此类信息,并且可以在初始化时锁定/解锁消息。
存储价值你可以这样做:
SharedPreferences prefs = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE);
prefs.edit().putBoolean("value_name", true).commit();
阅读价值:
boolean value = prefs.getBoolean("value_name", false);