androidpreference
⑴ 如何在android中利用shared preferences存儲和讀取數據
1、任務目標
(1)掌握Android中SharedPreferences的使用方法。
2、任務陳述
(1)運行後,顯示如下界面,可以寫入和讀取SharedPreferences中的數據:
3、任務實施及所涉及知識技能講解
第一步:新建一個Android工程,命名為SharedPreferencesWrite。
第二步:在layout下添加一個使用線性布局的布局文件,命名為:main.xml。
布局文件源代碼:
http://www.worlc.com/blog2012.aspx?bid=19403636
第三步:在CopySharedPreferencesTest.java下聲明如下變數,並導入導入相關包(如何使用SharedPreferences存儲和讀取數據):
[java] view plain
SharedPreferences preferences;
Editor editor;
第四步:在onCreate方法中修改如下代碼:
[java] view plain
setContentView(R.layout.main);
第五步:在onCreate方法中實例化前面聲明的兩個對象,代碼如下:
[java] view plain
preferences = getSharedPreferences("crazyit", MODE_WORLD_READABLE);
editor = preferences.edit();
第六步:在onCreate方法中獲取兩個按鈕,代碼如下:
[java] view plain
Button read = (Button) findViewById(R.id.read);
Button write = (Button) findViewById(R.id.write);
第七步:在onCreate方法中為兩個按鈕添加監聽器,代碼如下:
[java] view plain
write.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 "
+ "hh:mm:ss");
// 存入當前時間
editor.putString("time", sdf.format(new Date()));
// 存入一個隨機數
editor.putInt("random", (int) (Math.random() * 100));
// 提交所有存入的數據
editor.commit();
}
});
read.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
//讀取字元串數據
String time = preferences.getString("time", null);
//讀取int類型的數據
int randNum = preferences.getInt("random", 0);
String result = time == null ? "您暫時還未寫入數據": "寫入時間為:" + time + "\n上次生成的隨機數為:" + randNum;
//使用Toast提示信息
Toast.makeText(SharedPreferencesTest.this ,
result , 5000).show();
}
});
第七步:點擊運行程序,程序源代碼如下:http://www.worlc.com/blog2012.aspx?bid=19403601
課堂練習:創建一個記錄應用程序使用次數的程序,當用戶第一次啟動應用程序時,系統創建SharedPrefererences,來記錄使用次數。用戶以後啟動應用程序時,系統先讀取SharedPrefererences中記錄的使用次數,然後將使用次數加1。
程序源代碼如下:
http://www.worlc.com/blog2012.aspx?bid=19403695
⑵ Android中如何設置SharedPreference文件名稱
獲取SharedPreference對象函數如下:
public abstract SharedPreferences getSharedPreferences (String name, int mode);
其中name代表名稱,mode代表文檔的操作許可權模式(私有,可讀,可寫)。因此只要在獲取時設置name即可。
(2)androidpreference擴展閱讀
1、數據讀取:
通過SharedPreferences對象的鍵key可以獲取到對應key的鍵值。對於不同類型的鍵值有不同的函數:
getBoolean,getInt,getFloat,getLong.
public abstract String getString (String key, String defValue);
2、數據存入:
數據的存入是通過SharedPreferences對象的編輯器對象Editor來實現的。通過編輯器函數設置鍵值,然後調用commit()提交設置,寫入xml文件。
public abstract SharedPreferences.Editor edit ();
public abstract SharedPreferences.Editor putString (String key, String value);
public abstract boolean commit ();