Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android的移動存儲解決方案之SharedPreferences

Android的移動存儲解決方案之SharedPreferences

編輯:Android開發實例

  搞Android有一段時間了,但是並沒寫過有關Android的博客,今天給大家介紹一下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)操作。

  具體的存入和獲取操作,我已經把代碼貼出來了,你們可以看一下。

 1 package org.sharedPreferences.test;
2
3 import android.app.Activity;
4 import android.content.SharedPreferences;
5 import android.os.Bundle;
6 import android.widget.EditText;
7 import android.widget.RadioGroup;
8
9  public class ShaPreTestActivity extends Activity{
10 /** Called when the activity is first created. */
11 private final String PREFERENCES_NAME="survey";
12 private EditText etName;
13 private EditText etAge;
14 private RadioGroup sex;
15
16 @Override
17 public void onCreate(Bundle savedInstanceState) {
18 super.onCreate(savedInstanceState);
19 setContentView(R.layout.main);
20 etName = (EditText)findViewById(R.id.name);
21 etAge = (EditText)findViewById(R.id.age);
22 sex = (RadioGroup)findViewById(R.id.sex);
23
24 SharedPreferences preferences = getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);
25 etName.setText(preferences.getString("name", ""));
26 etAge.setText(preferences.getString("age", ""));
27 sex.check(preferences.getInt("sex", -1));
28 }
29
30 @Override
31 protected void onStop() {
32 //獲得SharedPreferences對象
33 SharedPreferences MyPreferences = getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);
34 //獲得SharedPreferences.Editor對象
35 SharedPreferences.Editor editor = MyPreferences.edit();
36 //保存組件中的值
37 editor.putString("name", etName.getText().toString());
38 editor.putString("age", etAge.getText().toString());
39 editor.putInt("sex", sex.getCheckedRadioButtonId());
40 //提交保存的結果
41 editor.commit();
42 super.onStop();
43 }
44 }

  代碼寫好後,你運行程序,你會發現,你輸入完退出後,當你再次進入該程序的時候,你就會發現,你上次寫的東東還在上面,而且是一模一樣。

  並且你會在data目錄下找到一個名字叫survey.xml文件:

 

  然後把它導出來,打開之後的格式以及內容如下所示:

  

1 <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
2 <map>
3 <int name="sex" value="2131034115" />
4 <string name="name">name</string>
5 <string name="age">10</string>
6 </map>
7

  從上面的內容可以看出,它是把那些字段都保存到了xml文件中,當你開啟這個應用的時候,它會自動的去data下面找到相應的xml並且把相應的數據顯示出來。

  這是我做的有關SharedPreferences例子,後面我還會介紹一些有關數據庫的例子,希望大家繼續關注。

轉自:http://www.cnblogs.com/juniorblanhan/archive/2010/12/08/1900215.html

轉自:

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved