执行以上代码,SharedPreferences将会把这些数据保存在test.xml文件中,可以在File Explorer的data/data/相应的包名/test.xml 下导出该文件,并查看。
2、使用SharedPreferences读取数据方法如下:
//同样,在读取SharedPreferences数据前要实例化出一个SharedPreferences对象
SharedPreferencessharedPreferences= getSharedPreferences("test",
Activity.MODE_PRIVATE);
// 使用getString方法获得value,注意第2个参数是value的默认值
String name =sharedPreferences.getString("name", "");
String habit =sharedPreferences.getString("habit", "");
//使用toast信息提示框显示信息
Toast.makeText(this, "读取数据如下:"+"n"+"name:" + name + "n" + "habit:" + habit,
Toast.LENGTH_LONG).show();
三、理解
我们可以简单的理解为:在手机本地某个地方会存放我们自定义的xml文件,每个文件用来存放相关的键值对数据。比如我们希望存储用户的偏好设置,即可创建一个名为UserPref的SharedPreferences并读写即可。
四、比较getSharedPreferenced和getPreference
getSharedPreferenced获取的文件是在package内都可以使用context对象获取到的,只需要指定name就可以获取到特定的xml文件。
但是,getPreference方法是专门用在Activity内部的,创建的xml文件只能在该Activity上下文内获取,而且不需要指定名字,这个xml文件只属于这个Activity。
其它就没有区别了。唯一区别就是一个权限域的区别。
示例:
Context context = getActivity();
SharedPreferences sharedPref = context.getSharedPreferences("userPref", MODE_PRIVATE);
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
注:相关教程知识阅读请移步到Android开发频道。










