Android存储-偏好设置

 1. 定义:共享参数,保存一些较短的数据,比如用户登陆时的用户名,密码等。其实质是采用了xml文件存放数据,路径      为:/data/data/<packagename>/shared_prefs。

 2. 使用方法:

    (1)得到共享参数对象两种方法:
   a. getSharedPreferences:调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他组          件共享.比如:  SharedPreferences sp = context.getSharedPreferences("共享参数文件名", Context.MODE_PRIVATE);
             b. getPreferences:调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用,比如:
         SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);  //此方法默认生成一个xml文件-  类名.xml。
    (2)向共享参数文件中写入内容:
  a. 获得SharedPrefreces对象:SharedPreferencessharedPref=  getActivity().getSharedPreferences("fileName",Context.MODE_PRIVATE);
  b. 获得Editor对象(对SharedPreferences进行编辑只能通过Editor对象):Editor editor = sharedPref.edit();
  c. 写入内容:editor.putInt("key", 90);
  d. 调用Editor对象的commit()方法提交:editor.commit();
   (3)读取共享参数文件内容:

         使用SharedPreferences中getXXX()方法.比如: 

    SharedPreferences sharedPref =getActivity().getSharedPreferences("fileName",Context.MODE_PRIVATE);

       long highScore = sharedPref.getInt("key", 默认值); //默认值:当共享参数文件中,key没有值,则需返回一个默认值,默认值由程序员自己定     义。   
3. SharedPreferences的四种操作模式:
  (1)Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件   的内容
  (2)Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.
  (3)Context.MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.
  (4)Context.MODE_WORLD_WRITEABLE :表示当前文件可以被其他应用写入
           注:权限是可以相加的,比如:现在我想要一个其它项目可以读取,并且也可以写入,还可加:                                           Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE+Context.MODE_APPEND
4. 补充:
 (1)SharedPreferences 本身是接口,创建实例只能通过 Context 提供的方法来获取:
      getSharedPreferences(Stirng name, int mode) 
 (2)Context.MODE_APPEND追加模式在偏好设置里并没有意义,只要关键字不同,就会向存储内容的xml文件里写入数据.
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值