Android アプリケーションに設定アクティビティがあります。これは、アイテムの選択時に設定を保存することを目的としています。私の問題は、設定が保存されないことです。次のメソッドは、ユーザーの選択が行われるたびに呼び出されます。
public void savePreferences()
{
defaultVolumeUnit = MySingleton.getInstance().getDefaultVolumeUnit();
defaultPressureUnit = MySingleton.getInstance().getDefaultPressureUnit();
defaultTempUnit = MySingleton.getInstance().getDefaultTempUnit();
settings = getSharedPreferences(SettingsTAG, 0);
Editor editor = settings.edit();
editor.putInt("selectVolume", defaultVolumeUnit);
editor.putInt("selectPressure", defaultPressureUnit);
editor.putInt("selectTemperature", defaultTempUnit);
editor.commit();
}
また、起動時にすべての設定が復元される MAIN アクティビティで次のコードを使用します。
public void restoreValues()
{
settings = getSharedPreferences(SettingsTAG, 0);
int SelectedVolume = settings.getInt("selectVolume", 0);
int SelectedPressure = settings.getInt("selectPressure", 0);
int SelectedTemperature = settings.getInt("selectTemperature", 0);
// Necessary assignments here...
}
アプリケーション全体でグローバル変数を使用していますが、それらは保存されますが、設定は保存されません。savePreferences() と restoreValues() メソッドの両方が呼び出されることは確かですが、ユーザーが選択したものは保存されません。
つまり、何も保存/復元されません。何が間違っているのかわかりませんが、この問題は私を夢中にさせています。これは以前は機能していましたが、設定UIの刷新を行っているところ、同じコードが突然機能しなくなりました...
何か助けてください。