2015-07-05 57 views
0

我被問及如何通過PreferenceActivity更改MainActivity(Changing MainActivity via PreferencesActivity) 現在我試圖更改DrawerMenu。我有2個字符串(姓名和電子郵件)的主要活動通過PreferenceActivity更改抽屜菜單

String NAME = "{name}"; 
    String EMAIL = "{email}"; 

在onCreate方法我試圖做這樣的事情:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
     String mName = prefs.getString("test_name", NAME); 
     String mEmail = prefs.getString("test_email", EMAIL); 
     mName = NAME; 
     mEmail = EMAIL; 

但它不工作。

但在此之前我已經(在onCreate方法):

mAdapter = new MyAdapter(TITLES,ICONS, NAME, EMAIL, PROFILE); 

在此先感謝!

回答

1
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
String mName = prefs.getString("test_name", NAME); 
String mEmail = prefs.getString("test_email", EMAIL); 
mName = NAME; //<- Why do you do this? 
mEmail = EMAIL; //<- This too 

您設置你的喜好你mNamemEmail之後,你再改變它的值。

你寫的,它不會與以下工作:

mAdapter = new MyAdapter(TITLES,ICONS, NAME, EMAIL, PROFILE); 

也許你只是想要做這樣的事情:

NAME = mName; 
EMAIL = mEail; 
+0

謝謝,我刪除有2行。我試圖做像NAME = mName等但它說,無法解析符號cuz mName只出現在onCreate方法,甚至在此方法之前,我寫字符串mName和下一行NAME = mName它不會工作。我需要mAdapter行(構造函數) –