标题 ##自定义一个 SharedPreferences的封装类 http://blog.youkuaiyun.com/wubihang/article/details/51005383
内容简介
存储数据 ##
SharedPreferences是使用键值对的方式来存储数据的。当我们需要保存一个数据的时候,只需要提供一个对应的键,这样在取出值的时候就可以通过这个键把相应的值取出来,而且SharedPreferences还支持多种不同的数据类型存储,如果存储的类型是整型,那么读出的也是整形。
将数据存储到SharedPreferences中
首先要获得SharedPreferences对象,Android中主要提供了三种方法用于得到SharedPreferences对象。1、****Context的getSharedPreferences()方法
该方法接收两个参数,第一个参数用于指定SharedPreferences文件的名称,如果指定的名称不存在就会创建一个,SharedPreferences文件都存放到/data/dada//shared_prefs目录下。第二个参数用于指定操作的模式,主要有两个模式可以选择,MODE_PRIVATE和MODE_MULTI_PROCESS MODE_PRIVATE和直接传入0没有区别,表示只有当前的应用程序才可以对这个文件进行读写。
MODE_MULTI_PROCESS一般会用于多个进程对这个文件进行读写操作。2、****Activity类中的getPreferences()方法。
它只接收一个操作模式参数,因为这个方法会自动将当前类名作为SharedPreferences的文件名
这两种方式的区别是:
使用Activity对象获取的SharedPreferences对象只能在该Activity中使用;
使用Context对象获取的SharedPreferences对象可以在同一应用程序中共享
3、PreferencesManager类中的getDefaultSharedPreferences()方法
它是一个静态的方法,它接收一个Context类型的参数,并自动使用当前应用程序的包名作为前缀来命名SharedPreferences文件。
得到了SharedPreferences对象后,就可以向SharedPreferences文件中存储数据了。
1、调用SharedPreferences的edit()方法来获取一个SharedPreferences.Editor对象。
2、调用**editor.put**Boolean() ,向文件中存储Boolean类型的数据,调用editor.putString() 来存储字符串数据。其他的以此类推
3、调用commit()方法将添加的数据提交,从而完成数据存储的操作。
public final static String CONFIG_DOC = "配置文件";//文件名
SharedPreferences.Editor editor = getSharedPreferences(CONFIG_DOC, MODE_PRIVATE);;
editor.putInt("KEY_GAME_GODE", gameGold);
editor.commit();
editor.apply();
读取数据
SharedPreferences 提供了一系列的get方法用于对数据进行读取,列如读取一个Boolean就用一个getBoolean()方法,这些get方法都接收两个参数,第一个参数是键,参数存储数据时使用的键,第二个参数是默认值,即表示当传入的键找不到对应的值时,会以默认值返回
SharedPreferences.Editor也提供了clear(),可以将存储的数据都清除。