搞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 }

  代码写好后,你运行程序,你会发现,你输入完退出后,当你再次进入该程序的时候,你就会发现,你上次写的东东还在上面,而且是一模一样。

Android的移动存储解决方案之SharedPreferences_第1张图片

  并且你会在data目录下找到一个名字叫survey.xml文件:

Android的移动存储解决方案之SharedPreferences_第2张图片

  然后把它导出来,打开之后的格式以及内容如下所示:

  

                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例子,后面我还会介绍一些有关数据库的例子,希望大家继续关注。(本来我是想上传例子的,但是找了半天也没找到,你们如果谁知道,请告我一声,谢谢!)

更多相关文章

  1. Android 中文设置成粗体的方法
  2. Bitmap和Drawable相互转换方法
  3. android onSaveInstanceState方法 横坚屏切换
  4. Android Studio 编译提示 aapt.exe finished with non-zero exit
  5. android中处理json最佳方法
  6. [置顶] 彻底解决Android 应用方法数不能超过65K的问题
  7. Android JNI编程内存问题定位方法

随机推荐

  1. XML基础讲解之结构与语法
  2. 详细介绍Android 解析XML文件和生成XML文
  3. XML文件数减少的示例代码分享
  4. XML入门的常见问题之二
  5. 利用XML FOR PATH合并分组信息的示例代码
  6. XML入门的常见问题之一
  7. 详细介绍XML阅读器的示例代码
  8. XML新手教程:了解XML
  9. XML实战秘籍第五卷:结构树图
  10. XML可以做什么?