В моем приложении есть две вкладки, такие как SettingTab и ApplicationTab.
Теперь на вкладке настроек у меня есть кнопка toogleButton. Я сохраняю выбор tooglebutton в общем доступе с этим кодом:
myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
prefsEditor = myPrefs.edit();
toogleForFullResult.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
if (((ToggleButton)v).isChecked())
{
Toast.makeText(getApplicationContext(), "Full Result Sound is On", Toast.LENGTH_SHORT).show();
prefsEditor.putBoolean("FullResultIsOn", true);
}
else
{
Toast.makeText(getApplicationContext(), "Full Result Sound is Off", Toast.LENGTH_SHORT).show();
prefsEditor.putBoolean("FullResultIsOn", false);
}
}
});
prefsEditor.commit ();
А в ApplicationTab, основываясь на выборе кнопки toogle, я играю какой-то звук. Код такой:
myPrefs = this.getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
fullResultSound = myPrefs.getBoolean("FullResultIsOn", false);
lessResultSound = myPrefs.getBoolean("LessResultIsOn", false);
if(fullResultSound)
{
SettingsTab.toogleForFullResult.isChecked();
}
if(fullResultSound)
{
playSound(soundFileForFullResult);
}
else
{
playSound();
}
Теперь проблема в том, что если я выберу тоглеон, то он заработает только один раз. И затем, если я снова начну задание, то переключатель отключен. Почему я не могу сохранить выбор toogle в sharedPreference?
Пожалуйста, помогите мне .. Спасибо.