在preference级存储整数整数、preference

2023-09-06 13:18:07 作者:吃颗糖﹥ε﹤壮壮胆

在我的Andr​​oid应用程序,我创建了一个preference类(扩展了preferenceActivity),用于存储约10的整数值。我不是创造的R.xml该活动的任何XML文件,因为我不想要它。我只需要保存在这个文件中10整数变量(甚至退出后,可以将其保存),我想从另一个活动获取这些值,进行一些改变preferences,然后保存preference类。

我的疑问是:

如何保存在preference类的整型变量? 如何调用该变量的另一项活动? 如何再次返回变量preference类? 解决方案

你好我在这里补充样本code的共享preferences为你担心。请试试这个code,让我知道。希望它应该对你有帮助。谢谢你。

共享preferences创建:

 共享preferences共享preF = getBaseContext()getShared preferences(USER_ preFS,Context.MODE_PRIVATE)。
 

存储值到共享preferences:

  INT用户id = 2425;
字符串的authToken =abcdef345345;
字符串authkey =QRST;
。共享preF = getBaseContext()getShared preferences(USER_ preFS,prefMode);
共享preferences.Editor编辑= vSmileShared preferences.edit();
editor.putString(AUTH_KEY,authkey);
editor.putString(的auth_token的authToken);
editor.putString(USER_ID,将String.valueOf(用户ID));
editor.commit();
 
整数在内存中的存储

Retriving共享preferences从另一个活动值:

 字符串的authToken =;
字符串authkey =;
INT用户ID = 0;
。共享preferences共享preF = getBaseContext()getShared preferences(USER_ preFS,Context.MODE_PRIVATE);
的authToken =共享pref.getString(的auth_token,NULL);
authkey =共享pref.getString(AUTH_KEY,NULL);
用户ID =共享pref.getString(USER_ID,0);
 

如果共享preference用户ID为空或空意味着将采取默认为0;

In my android app I have created a preference class(which extends PreferenceActivity) for storing about 10 integer values. I am not creating any xml file for that activity in R.xml as I don't want it. I just need to store 10 integer variables in this file(which can save it even after exit) and I want to get these values from another activity, perform some changes to the preferences, then save the preference class.

My queries are:

How can I store an integer variable in preference class? How to call that variable from another activity? How to return that variable again to preference class?

解决方案

Hi here i added sample code for SharedPreferences for you concern .please try this code and let me know. Hope it should helpful for you. Thanks.

SharedPreferences Creation:

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

Store the values to 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 values from another Activity:

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);

If the SharedPreference UserID is null or empty means it will take default as 0;