你好,我已经根据切换按钮的选择实现了应用程序。但是,当我关闭该应用程序然后重新打开它时,它将回到其默认选择,即“关闭”。 那么,有没有人告诉我我应该保存toogleButton选择的状态并根据该toogleButton选择状态执行一些操作呢? 谢谢。
你好,我已经根据切换按钮的选择实现了应用程序。但是,当我关闭该应用程序然后重新打开它时,它将回到其默认选择,即“关闭”。 那么,有没有人告诉我我应该保存toogleButton选择的状态并根据该toogleButton选择状态执行一些操作呢? 谢谢。
使用SharedPreferences。
tg = (ToggleButton) findViewById(R.id.toggleButton1);
tg.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
if((tg.isChecked()))
{
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("tgpref", true); // value to store
editor.commit();
}
else
{
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("tgpref", false); // value to store
editor.commit();
}
}
});
以下是如何检索值的方法:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
boolean tgpref = preferences.getBoolean("tgpref", true); //default is true
if (tgpref = true) //if (tgpref) may be enough, not sure
{
tg.setChecked(true);
}
else
{
tg.setChecked(false);
}
我没有验证这段代码,但看一些网上的例子,应该很简单!
tg = (ToggleButton) findViewById(R.id.toggleButton1);
tg.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
SharedPreferences.Editor editor = preferences.edit();
editor.putBoolean("tgpref", tg.isChecked()); // value to store
editor.commit();
}
});
以下是如何获取值的方法:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
boolean tgpref = preferences.getBoolean("tgpref", true); //default is true
tg.setChecked(tgpref);
Intent intent = new Intent(this, Something.class);
intent.putExtra(BOOLEAN_VALUE, Boolean.valueOf((tvConfigBoolean.getText().toString())));
startActivity(intent);
Bundle bundle = getIntent().getExtras();
tbtConfigBoolean.setChecked((bundle
.getBoolean(MainActivity.BOOLEAN_VALUE)));
editor.putBoolean("BooleanKey", tbtConfigBoolean.isChecked());
editor.commit();
祝你好运