我在我的android应用程序中有一个设置活动,其目的是保存项目选择的偏好。我的问题是,我的设置不能保存。下面的方法被调用每一个用户做出选择时间: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();
}
我也用下面的代码在我的主要活动,其中所有的设置值时恢复启动:
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()方法被调用,但用户选择的任何内容都不会被保存。
换句话说,没有得到保存/恢复。我不知道我在做什么错,但是这个问题一直让我发疯。这用于为我工作之前,但我正在做一个设置用户界面改造和相同的代码突然不工作...
任何帮助吗?
没关系,我刚找到我的解决方案。结果我的restoreValues()方法仅在用户第一次打开应用程序时被调用,从而消除了具有偏好的整个目的。 感谢您的信息,但。我会保留以备日后参考! – Pkmmte 2012-07-08 03:25:12