偏好设置

来源:互联网 发布:手机网络接收器 编辑:程序博客网 时间:2024/04/28 00:17

SharedPreferences(偏好设置)

一、什么是偏好设置

偏好设置的本质,是使用xml文件保存数据。该文件一般保存在data/data/应用程序包名/shared_prefs/文件夹

偏好设置一般用来保存用户信息,用户设置等数据量较小的数据。

SharedPreference提供了一种以键值对的形式保存并读取持久数据。所以仅仅需要像使用Map一样使用偏好设置即可。偏好设置数据是应用程序私有的,仅仅应用程序本身可以访问。


二、如何用SharedPreferences设置保存数据


1.在Android中用SharedPreferences接口的对象,实现偏好设置。使用ContextWrapper类的定义的方法:getSharedPreferences()即可获取SharedPreferences接口的对象。


SharedPreferences sp = getSharedPreferences(name,mode);

String name = "user-name";
int mode = MODE_PRIVATE;

其中第一个参数是文件名,就是最后在data/data....下保存的xml文件的文件名字。例如,user-name.xml

第二个参数是权限


2.需要用Editor的put()方法写入数据。

Editor editor = sp.edit();
editor.putString("user_name", userName);
editor.putInt("user_age", userAge);
editor.putString("user_gender", userGender);


3.调用Editor的commit()方法提交,以完成写入过程。

editor.commit();


三、读取偏好设置

获取SharedPreferences对象之后,直接调用get系列方法即可获取数据

SharedPreferences sp = getSharedPreferences("user-name", MODE_PRIVATE);
String userName = sp.getString("name", null);
String userGender = sp.getString("gender", "男");
int userAge = sp.getInt("age", -1);


--------------------------

偏好设置的数据会以xml的形式,,保存在data/data/应用程序包名/shared_prefs/文件夹下

  <?xml version="1.0" encoding="utf-8" standalone="yes" ?> 
- <map>
  <string name="user_gender">男</string> 
  <string name="user_name">liying</string> 
  <int name="user_age" value="23" /> 
  </map>


注意:

偏好设置是固定保存在那样一个文件夹里的,偏好设置保存数据,对于软件来说是不可靠的,因为当删除的时候,软件不知道。



0 0
原创粉丝点击