0
我有我從服務調用的這段代碼。從SharedPreferences獲取價值的問題
prefs = getSharedPreferences(homeConfigure.APP_PREF_NAME, Context.MODE_PRIVATE);
city = prefs.getString(CITY + appWidgetId,"nothing");
它返回存儲的正確值。但隨後通過服務類中的AlarmManager調用該服務將返回值「Nothing」。
什麼可能是錯的?
我保存在homeConfigure活動這樣的:
city = cityText.getText().toString();
Editor editor = prefs.edit();
editor.putString(CITY + appWidgetId,city);
editor.commit();
並從意圖在OnCreate(配置類的插件首先加入時獲得appwidget):
appWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID,AppWidgetManager.INVALID_APPWIDGET_ID);
它似乎沒有工作。我做了prefs = preferenceManager.getDefaultSharedPreference(homeConfigure.self)。自我就是自我= this;在homeConfigure類中。但它似乎並不奏效。 – Rexx 2011-04-21 17:29:38
@Rexx你如何初始化你的appWidgetId和CITY? – Guy 2011-04-21 17:49:28
不確定你的意思,但正如我所說,它來自配置活動。我的appWidgetId(ApPWidgetManager.Extra_APPWIDGET_ID)是從intent獲得的,而CITY是來自EditText。我已經添加了如何將它們保存在 – Rexx 2011-04-21 19:43:50