2012-04-27 58 views
0

我能夠在共享偏好這種方式鏈接到一個活動:Android的負載SharedPreferences的工具到偏好活動

Intent intent = getIntent(); 
Bundle extras = intent.getExtras(); 
if (extras != null) appWidgetId = extras.getInt(AppWidgetManager.EXTRA_APPWIDGET_ID, 
               AppWidgetManager.INVALID_APPWIDGET_ID); 

if (appWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID) finish(); 

SharedPreferences pref = getSharedPreferences("Widget"+appWidgetId, 0); 

在我的優先應用,我可以通過訪問顯示首選項的配置對話框:

getPreferenceScreen().getSharedPreferences(); 

這些首選項未鏈接到一個小部件,但全球性的。我如何將顯示在我的首選項活動中的首選項更改爲與窗口小部件對齊的首選項?

我想手動設置共享參數文件:

PreferenceManager localPrefs = getPreferenceManager(); 
    localPrefs.setSharedPreferencesName("GITC_Prefs"); 

這導致空指針異常,當我嘗試通過

PreferenceActivity.getPreferenceScreen(); 

回答

3

訪問共享的首選項要訪問相同的兩個SharedPreferences您需要爲PreferencesActivity.getPreferenceManager().setSharedPreferencesName(name)Activity.getSharedPreferences(name, 0)指定相同的名稱。您目前在第一種情況下指定了「Widget」+ appWidgetId,第二種情況下指定了「GITC_Prefs」

+0

對,愚蠢的錯誤:p – Anthea 2012-05-04 08:46:40