SP(sharedpreference)是Android自带的一种轻量级存储方法(xml文件存储方式),它一般储存在文件/data/data//shared_prefs目录下。使用规则很单一,因为它仅能以键值对的形式储存单个对应的数据(具体最常见的使用方法就是用户名登陆,类似QQ,比如你输入一个账号,这个账号信息就会保存在显示框中,但当你输入另一个账号,它就会被覆盖掉,转而储存另一个账号…(当然,下拉选择的方法不算…))。:
废话不多说,代码上见说明吧:
/** * 1、先写这么一个自定义类 * 2、要引用sp时就直接new这个类(无论存入sp还是读sp) * * 3、这个例子为你介绍了使用sp的最最基本的组成,如果需要,只需一直粘贴、复制... */public class MySharedPreference { //这是要创建的文件名声明 public static final String FILE_NAME = "this_is_file_name"; //这是你要存的一个东西的key值 public static final String KEY_ABOUT_WHAT = "this_is_key"; //这是你要存的一个东西的value值,当你调用了sp,而 //没做任何赋值的话,它(DEFAULT_VALUE )就是默认值, //如果是String类型的,可以为""(空)引用 public static final int DEFAULT_VALUE = 2; //这个类必需有,具体为什么我就不说了 private final SharedPreferences mSharedPreferences; //接下来先说一说SharedPreferences的四种操作模式: // Context.MODE_PRIVATE // Context.MODE_APPEND // Context.MODE_WORLD_READABLE // Context.MODE_WORLD_WRITEABLE // Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容 // Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件. // Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件. // MODE_WORLD_READABLE:表示当前文件可以被其他应用读取. // MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入. //构造方法,其中context.getSharedPreferences(文件名, 访问模式)就是创建一个this_is_file_name.xml文件,读取方式为默认格式 public MySharedPreference (Context context) { mSharedPreferences = context.getSharedPreferences(FILE_NAME , Context.MODE_PRIVATE); } //根据Key值自定义取出sp值的方法 public int getKey(){ return mSharedPreferences.getInt(KEY_ABOUT_WHAT ,DEFAULT_VALUE); } //根据Key值自定义存入sp值的方法,其中setKey(参数),参数是你要存入类型数据 //sp要存入的话,需要一个接口方法edit(),edit()里面定义了putString、putInt等各种类型的值的存入方法。 //插入数据:调用Editor.putxxxx方法,两个参数分别为键和值。 //获取数据:调用Editor.getxxxx方法,两个参数分别为键和不存在指定键时的默认值。 //删除数据:调用Editor.remove方法,参数为指定的键。 //清空所有数据:调用Editor.clear方法 public void setKey(int key){mSharedPreferences.edit().putInt(KEY_ABOUT_WHAT ,key).commit(); } //使用方法: //接MySharedPreference sp = new MySharedPreference(); //然后用调用sp.setKey(有几个参数就写几个,用“,”隔开)就是存入sp中, //调用sp.getKey()就是取出sp文件中的值就行啦}以上就是我的个人使用心得了,如果错误,请指出,谢谢。
新闻热点
疑难解答