• Android的移动存储解决方案“.NET研究”之SharedPreferences 狼人:


      搞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;
    上海网站建设 style="color: #008080;user-select:none;"> 4 import android.content.SharedPre上海闵行企业网站制作ferences;
    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例子,后面我还会介绍一些有关数据库的例子,希望大家继续关注。(本来我是想上传例子的,但是找了半天也没找到,你们如果谁知道,请告我一声,谢谢!)

    声明:此博有部分内容为转载,版权归原作者所有~
  • 相关阅读:
    Binary Tree Inorder Traversal
    Populating Next Right Pointers in Each Node
    Minimum Depth of Binary Tree
    Majority Element
    Excel Sheet Column Number
    Reverse Bits
    Happy Number
    House Robber
    Remove Linked List Elements
    Contains Duplicate
  • 原文地址:https://www.cnblogs.com/waw/p/2219530.html
Copyright © 2020-2023  润新知