获取/使用偏好设置文件共有3种方式

1)Context类中定义了一个方法:
getSharedPerference(偏好设置文件名称,Mode);
一般Mode的取值Contex.Mode_PRIVATE


2)Activity类中定义了一个方法:
getPreference(Mode);
用这种方式获取的偏好设置文件的名字与调用该方法的Activity的类名一致


3)PreferenceManager类中有一个方法getDefaultSharedPreference(context);
用这种方式获取的偏好设置文件的名字与项目包名一致,Mode默认使用MODE_PRIVATE
的方式


存/取偏好设置文件中的值
取值:获得偏好设置文件后,使用getXXX(key,default);
存值:获得偏好设置文件后,使用edit()方法获得一个偏好设置文件编辑器Editor对象。通过Editor对象的putXXX(key,value);

put完毕后,必须要调用Editor的commit方法进行提交,才能够正确保存。


例子:

public class SPUtil {

public static Editor editor;
public SharedPreferences sp;

public SPUtil(Context context,String name){
sp = context.getSharedPreferences(name, Context.MODE_PRIVATE);
editor = sp.edit();
}

public SPUtil(Context context){
sp = PreferenceManager.getDefaultSharedPreferences(context);
editor = sp.edit();
}

public boolean isFirstRun(){
return sp.getBoolean("firstrun", true);
}

public void setFirstRun(boolean flag){
editor.putBoolean("firstrun", flag);
editor.commit();
}

}

在另一个类中调用:

public class SplashActivity extends Activity {
SPUtil spUtil;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
spUtil = new SPUtil(this);
new Handler().postDelayed(new Runnable() {

@Override
public void run() {
//界面跳转
if(spUtil.isFirstRun()){
spUtil.setFirstRun(false);
Intent intent = new Intent(SplashActivity.this,GuideActivity.class);
startActivity(intent);
finish();
}else{
Intent intent = new Intent(SplashActivity.this,MainActivity.class);
startActivity(intent);
finish();
}
}
}, 2000);


}




}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值