SharedPreferences 是一种轻量级别的数据存储方式,以键值对的形式存储数据,主要存储的是程序中的一些配置信息。
该种方法存储数据简单方便,速度很快,不同于数据库存放大数据的耗时操作。
注意:
1.该种方法只能存储基本数据类型。存储文件类型是xml
2.存储位置 data/data/应用程序的包名/shared_prefs/共享文件
创建SharedPreferences有两种方式:
1,getSharedPreferences(String name,int mode) :
如果程序中需要多个preferences文件时,采用该方法,参数一用于指定该文件的文件名;参数二指定文件的读写模式
2,getPreferences() :
如果程序中只需要一个preferences文件,采用该方法。该文件不需要指定名字。
采用SharedPreferences接口进行数据存去的流程
1,SharedPreferences pres = getSharedPreferences("app",Context.MODE_PRIVATE );
2, SharedPreferences.Editor editor = pres.edit();
3, editor.putBoolean("first",true); //存数据
4, editor.commit();
4, editor.getBoolean("first",false); //取数据
SharedPreferences方法的说明:
SharedPreferences 的getxxx()方法有两个参数,这不同于集合、Bundle、ContentVlaues等的键值对数据的获取。
eg. getBoolean("app",true); 获取键值对中key是app的值,如果不存在该key对应的值,那么就返回true。
String value = getString("apk","") 同理,若不存在apk对应的值,那么就返回空字符串,并将空字符串赋给value;
SharedPreferences在开发中实现引导界面的显示:
//获取文件名为info的preference文件,如果不存在该文件就自动创建该文件。第二个参数设置该文件只能被本应用程序访问
SharedPreferences preference = Context.getSharedPreferences("info",Context.MODE_PRIVATE);
//添加判断语句,如果程序时第一次启动,则跳转到引导界面。否则不显示引导界面,直接进入程序的主页。
if(preference.getBoolean("first",true)){ //此处,info文件内容为空,所以返回值是true,可以执行加载引导页的代码
Intent intent = new Intent(MainActivity.this,Leading.class);
startActivity(intent);
// 引导界面显示成功后,向info文件中存入数据,用于程序之后启动时判断;
Editor editor = preference.edit();
editor.putBoolean("first",false);
editor.commit();
}else{
//显示程序主界
}
通过putInt()判断
int num = 0;
if(pre.getInt("first",num) == 0){
//加载引导界面
} else{
//加载程序主界面
}
待续。。。