【发布时间】:2016-03-03 06:02:23
【问题描述】:
我正在使用共享首选项,并希望在未找到首选项时将默认值设为 1。
我的代码
int currentRadio;
...
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
currentRadio = prefs.getInt("radioSelected", 1);
我不确定为什么默认值没有得到 1。
为了测试,我会从我的手机上卸载该应用程序,然后从 android studio 将该应用程序启动到我的手机上。每次我得到 2 作为默认值。但是,如果我只是从应用程序中清除数据,我会得到 1 作为默认值。
感谢您的帮助,谢谢。
【问题讨论】:
-
哪个安卓版本?
-
你的实现会有问题。因为如果什么也没找到,它应该返回 1。否则它将为空。但你说的是
it returns 2。所以我猜你要么之前在其中存储了一些值,要么将一些值分配给currentRadio -
@jon 在卸载应用之前,您是否将 2 保存到您的共享偏好设置中?如果是,请尝试我的解决方案。
-
@sankyjain 不,我事先在共享首选项中保存的内容并不重要。无论我在新安装后什么时候开始,它都会返回 2。
标签: java android sharedpreferences