SharedPreferences的使用

来源:互联网 发布:万达网络科技集团招聘 编辑:程序博客网 时间:2024/05/19 15:19

本文原创,转载请注明:http://blog.csdn.net/j903829182/article/details/38349191

在Android里有SharedPreferences,这样的接口,使用这个接口可以很容易的实现对设置值得保存和获取。下面我就说下SharedPreferences设置值得保存,获取方法,和删除保存过的值得方法。

虽然使用SharedPreferences可以很方便的保存设置的值,但并不是什么数据都可以保存,只能保存以下数据类型的值。

boolean

float

int

long

String

1保存设置的值

SharedPreferences sp=Context.getSharedPrerences("file_name",MODE_PRIVATE);
SharedPreferences.Editor editor=sp.edit();
eidtor.putInt("id",1);
editor.putString("name","Android");
editor.commit()  or editor.apply();
Context.getSharedPrerences(),方法获取SharedPreferences实例。
SharedPreferences的edit()方法获取SharedPreferences.Editor实例
putInt方法保存int类型的值,putString方法保存String类型的值。commit方法,确定保存的值。
SharedPreferences将值保存在xml文件中。getSharedPrerences方法的第一个参数是这个xml文件的文件名(不包含扩展名)
,第二个参数是xml文件的创建格式。
保存值时,使用put对应的方法,保存key和value,指定键名就可以获取对应的值
只用使用了commit方法,才能确保将更改保存下来了。


2.获取设置的值

SharedPreferences sp=Context.getSharedPrerences("file_name",MODE_PRIVATE);
int id=sp.getInt("id",-1);
String name =sp.getString("name","");
首先获取SharedPreferences的实例,在通过使用getInt方法,获取键名为id的值(int型),如果xml文件没有找到这个
键的话,就返回第二个参数的值(defValue值)
getString方法获取键名为name的值,指定默认值为""
注意:获取的值的类型必须与定义的返回值得类型一致。


3.删除设置值

SharedPreferences sp=Context.getSharedPrerences("file_name",MODE_PRIVATE);
SharedPreferences.Editor editor=sp.edit();
editor.remove("id");
editor.remove("name");
eidrot.commit();
SharedPreferences.Editor.remove(String key),将指定的键对应的项目作为删除对象。调用commit方法才能把要删除的对象真正删除。


如果要删除项目所有的值,使用SharedPreferences.Editor.clear()
rg:
   editor.clear();
   eidrot.commit();


4.当调用Context.getSharedPrerences("file_name",MODE_PRIVATE);方法时,是在以下的位置创建xml文件(不存在同名文件)

/data/data/Package名/shared_prefs/文件名.xml

因为是通过应用出现创建的,所以卸载了应用程序,这个xml文件也会被删除

5.上面所举的是使用getSharedPrerences方法获取SharedPreferences类的实例,但是还有2种获取实例的方法。

SharedPreferences sp=getPreferences();
SharedPreferences sp=PreferenceManager.getDafaultSharedPreferences(this)
它们与getSharedPrerences方法不同,不需要指定文件名
getPreferences()这个方法只能通过Activity调用,可以查看设置的值,生成的xml文件名在/data/data/Package名/shared_prefs/Activity名.xml


getDafaultSharedPreferences(this)这个方法只能被同一个包Package的程序调用,可以查看设置值。/data/data/Package名/shared_prefs/Package名.xml

6.getSharedPrerences参数的第二个参数,

MODE_PRIVATE   只有创建文件的应用程序自身可以访问(默认)

MODE_WORLD_READABLE   其他应用程序可以读取

MODE_WORLD_WRITEABLE    其他应用程序可以写入



























































0 0
原创粉丝点击