Android中SharedPreference详解及简单实例

  

<强>,Android中SharedPreference详解

  

,,SharedPreference是Android提供的一种轻量级的数据存储方式,主要用来存储一些简单的配置信息,例如,默认欢迎语,登录用户名和密码等。其以键值对的方式存储,使得我们能很方便进行读取和存入。
  

  

,,,,SharedPreference文件保存在/数据/数据/& lt;包name>/shared_prefs路径下(如/数据/数据/com.android.alarmclock/shared_prefs/com.android.text_preferences.xml),通过猫命令可以查看文件,如:

  

 Android中SharedPreference详解及简单实例

  

,,,,通过活动自带的getSharedPreferences方法,可以得到SharedPreferences对象。
  

        公共抽象SharedPreferences getSharedPreferences(字符串名称,int模式);      

,,,,名称:表示保存后xml文件的名称
  

  

,,,,模式:表示xml文档的操作权限模式(私有,可读,可写),使用0或者MODE_PRIVATE作为默认的操作权限模式只
  

  

<>强,,,,1.数据读取:
  

  

,,,,通过SharedPreferences对象的键键可以获取到对应键的键值对。于不同类型的键值有不同的函数:
  

        getBoolean getInt, getFloat, getLong。   公共抽象字符串getString(字符串,字符串defValue);      

<>强,,,,2.数据存入:
  

  

,,,,数据的存入是通过SharedPreferences对象的编辑器对象编辑器来实现的。通过编辑器函数设置键值,然后调用commit()提交设置,写入xml文件。
  

        公共抽象SharedPreferences。编辑器编辑();   公共抽象SharedPreferences。编辑putString(字符串,字符串值);   公共抽象逻辑commit ();      

,下面一个实例显示一个TextView,上面显示用户使用该应用的次数。

  

效果图如下:

  

 Android中SharedPreference详解及简单实例

  

源代码如下:

  

main。xml:

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; LinearLayout xmlns: android=" http://schemas.android.com/apk/res/android "   android:取向=按怪薄?   android: layout_width="宽和"   android: layout_height=翱砗汀北?      & lt; TextView   android: id=癅 + id/textview”   android: layout_width="宽和"   android: layout_height=" wrap_content "   android:文本=癅string/hello”/比;      & lt;/LinearLayout>   之前      

TestSharedPreferences.java:

        包com.android.test;   进口android.app.Activity;   进口android.content.SharedPreferences;   进口android.os.Bundle;   进口android.preference.PreferenceManager;   进口android.widget.TextView;   公开课TestSharedPreferences延伸活动{/* *第一次被创建时调用活动。*/@Override   公共空间onCreate(包savedInstanceState) {   super.onCreate (savedInstanceState);   setContentView (R.layout.main);      SharedPreferences mSharedPreferences=getSharedPreferences (" TestSharedPreferences ", 0);//SharedPreferences mSharedPreferences=PreferenceManager.getDefaultSharedPreferences(这个);      int counter=mSharedPreferences。getInt(“计数器”,0);      TextView mTextView=(TextView) findViewById (R.id.textview);   mTextView。setText(“这个程序已经启动”+计数器+“。”);      SharedPreferences。编辑mEditor=mSharedPreferences.edit ();   mEditor。putInt(“计数器”,+ +计数器);   mEditor.commit ();      }   }   之前      

<强>几点说明:

  

1. sharedpreferences的获取有两种方法:

  

一是上面提到的通过活动自带(本质来讲是上下文的)的getSharedPreferences方法,可以得到SharedPreferences对象。这种方法的好处是可以指定保存的xml文件名。

  

另一种是通过PreferenceManager.getSharedPreferences(上下文)获取SharedPreferences对象。这种方法不能指定保存的xml文件名,文件名使用默认的:& lt;包name> _preferences +”。xml”的形式,不过如果在一个包里面采用这种方式需要保存多个这样的xml文件,可能会乱掉。建议采用第一种指定xml文件名的形式。
  

  

2。数据的存入必须通过SharedPreferences对象的编辑器对象编辑器来实现,存入(把)之后与写入数据库类似一定要提交。

Android中SharedPreference详解及简单实例