2011-11-06 72 views
11

非默認的喜好使用PreferenceActivity,機器人會自動保存簡單的喜好,如被選中的複選框等我有幾個問題:使用PreferenceActivity

1 - 哪裏這些偏好得救? PreferenceManager.getDefaultSharedPreferences(Context)返回的是相同的首選項文件嗎?

2 - 有沒有辦法使用不同的偏好設置?即使用context.getSharedPreferences(String name,int mode)可以提供一個字符串來標識一組特定的首選項。是否有可能將偏好從PreferenceActivity保存在一組像這樣返回的首選項中?

由於提前, 巴里

+0

hii you have have it for it –

+0

不,恐怕不是。 – barry

回答

12

是的,它是可能的。

看一看是: http://idlesun.wordpress.com/2011/04/08/how-to-make-preferenceactivity-use-non-default-sharedpreferences/#comment-36

public class MyPreferencesActivity extends PreferenceActivity { 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     PreferenceManager prefMgr = getPreferenceManager(); 
     prefMgr.setSharedPreferencesName("my_preferences"); 
     prefMgr.setSharedPreferencesMode(MODE_WORLD_READABLE); 

     addPreferencesFromResource(R.xml.preferences); 
    } 
} 

addPreferencesFromResource()不得不setSharedPreferencesName()後調用!

+0

鏈接的危險......他們已將位置更新爲http://idlesun.blogspot.com/2012/12/how-to-make-preferenceactivity-use-non.html - 但鏈接僅添加*一點*在這裏發佈...... @stephane發佈了重要的代碼。 :) –