android中sharedPreferences的用法

 

     做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连 接跟操作等耗时大大影响了程序的效率,因此我们使用键值这种一一对应的关系来存放这些配置信息。SharedPreferences正是Android中 用于实现这中存储方式的技术。

 

SharedPreferences的使用非常简单,能够轻松的存放数据和读取数据。SharedPreferences只能保存简单类型的数据,例如,String、int等。一般会将复杂类型的数据转换成Base64编码,然后将转换后的数据以字符串的形式保存在 XML文件中,再用SharedPreferences保存。

 

 

   使用SharedPreferences保存key-value对的步骤如下:

  (1)使用Activity类的getSharedPreferences方法获得SharedPreferences对象,其中存储key-value的文件的名称由getSharedPreferences方法的第一个参数指定。

  (2)使用SharedPreferences接口的edit获得SharedPreferences.Editor对象。

  (3)通过SharedPreferences.Editor接口的putXxx方法保存key-value对。其中Xxx表示不同的数据类型。例如:字符串类型的value需要用putString方法。

  (4)通过SharedPreferences.Editor接口的commit方法保存key-value对。commit方法相当于数据库事务中的提交(commit)操作。

 

具体代码的书写流程为:

 
protected void onCreate(Bundle savedInstanceState) {
.....

pref=PreferenceManager.getDefaultSharedPreferences(this);

 

在oncreate中加入 PreferenceManager

在onclick中加入代码

 

String account = username.getText().toString();
            String pass=userpass.getText().toString();
            
            if(account.equals("admin")&& pass.equals("123456")){
                
                editor=pref.edit();
                if(Remember.isChecked()){
                    editor.putBoolean("remember_pass", true);
                    editor.putString("username", account);
                    editor.putString("userpass", pass);
                                        
                }else{
                    editor.clear();
                }
                
                editor.commit();

 

 

案例 http://pan.baidu.com/s/1skWaSPJ

 

 

 

posted @ 2016-05-06 18:14  一颗神豆  阅读(240)  评论(0编辑  收藏  举报