Android手机开发专题博客

Android手机开发专题博客,为您精选安卓手机开发教程,助您手机开发愉快!

公告信息
欢迎光临Android手机开发专题博客,祝您手机开发愉快!
文章档案

利用SharedPreferences解决Android移动存储

今天给大伙介绍一下:android.content.SharedPreferences

如何利用它,来存储一些配置文件,以便软件再次开启,仍可以继续上次内容。

下面进入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的相关介绍使用,但愿对你有帮助。

新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"

2010/12/8 0:34:41 | android开发教程 | |

  • 发表评论