2014-01-20 60 views
0

在我的android应用程序中,我创建了一个首选项类(它扩展了PreferenceActivity),用于存储大约10个整数值。我没有在R.xml中为该活动创建任何xml文件,因为我不需要它。我只需要在这个文件中存储10个整型变量(即使在退出后也可以保存它),并且我想从其他活动中获取这些值,对首选项进行一些更改,然后保存首选项类。在偏好类中存储整数

我的查询是:

  1. 我怎么能存储优先级的整数变量?
  2. 如何从其他活动调用该变量?
  3. 如何将该变量再次返回到首选项类?
+0

粘贴一些你写的代码,告诉我们你已经尝试了一些东西! –

+0

使用PreferenceManager存储和恢复您的偏好值。从PreferenceManager中你可以获得SharedPreferences(在SharedPreferences中你可以存储N个变量,包括ints)。 – betorcs

回答

1

嗨,这里我添加了SharedPreferences的示例代码,供您关注。请尝试此代码并让我知道。希望它对你有帮助。谢谢。

SharedPreferences创建:

SharedPreferences sharedPref = getBaseContext().getSharedPreferences("USER_PREFS",Context.MODE_PRIVATE); 

存储的值,以SharedPreferences:

int userId = 2425; 
String authtoken = "abcdef345345"; 
String authkey = "qrst"; 
sharedPref = getBaseContext().getSharedPreferences("USER_PREFS",prefMode); 
SharedPreferences.Editor editor = vSmileSharedPreferences.edit(); 
editor.putString("AUTH_KEY", authkey); 
editor.putString("AUTH_TOKEN", authtoken); 
editor.putString("USER_ID", String.valueOf(userId)); 
editor.commit(); 

从另一个活动Retriving SharedPreferences值:

String authtoken =""; 
String authkey = ""; 
int UserId = 0; 
SharedPreferences sharedPref = getBaseContext().getSharedPreferences("USER_PREFS",Context.MODE_PRIVATE); 
authtoken = sharedPref.getString("AUTH_TOKEN", null); 
authkey = sharedPref.getString("AUTH_KEY", null); 
UserId = sharedPref.getString("USER_ID", 0); 

如果SharedPreference用户标识为空或空表示默认值为0;