大家好,我们这一节讲的是Android Preferences 的学习,Preferences 在Android当中被用来记录应用,以及用户喜好等等,它可以用来保存

简单的数据类型,如Int,Double,Boolean等。Preferences中保存的数据可以理解为Map型。我们通过PreferenceManager 以及getDefaultSharedPreferences(Context) 来获取它,比如当我们想获得整数我们可以用 getInt(String key, int defVal) .获取里面的某个键值,当我们想修改时候我们用 putInt(String key, int newVal), 最后用 edit(), 方法提交!千万不要忘记了哦~

为了让大家跟好的理解我做了一个简单的Demo,程序主要有个TextView控件,上面写着用户使用改应用的次数。效果如下图所示:

下面是实现Demo的大体步骤:

一、新建一个Android工程命名为:PreferencesDemo。

二、在修改main.xml布局文件,这里只是在TextView控件里加了一个id.代码如下:

[c-sharp]view plaincopy
  1. <?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"><TextViewandroid:id="@+id/text"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="@string/hello"/></LinearLayout>

三、修改PreferenceDemo.java的代码,全部代码如下:

[c-sharp]view plaincopy
  1. packagecom.android.tutor;importandroid.app.Activity;importandroid.content.SharedPreferences;importandroid.os.Bundle;importandroid.preference.PreferenceManager;importandroid.widget.TextView;publicclassPreferencesDemoextendsActivity{/**Calledwhentheactivityisfirstcreated.*/@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);SharedPreferencesmPerferences=PreferenceManager.getDefaultSharedPreferences(this);intcounter=mPerferences.getInt("counter",0);TextViewmTextView=(TextView)findViewById(R.id.text);mTextView.setText("Thisapphasbeenstarted"+counter+"times.");SharedPreferences.EditormEditor=mPerferences.edit();mEditor.putInt("counter",++counter);mEditor.commit();}}

四、运行代码,实现上述效果.

五、查看Preferences文件,首先打开命令终端:adb shell一下,然后cd data/data进入该目录,ls一下我们会发现一大堆包文件,入下图所示:

cd com.android.tutor(这里是我程序的包名)/shared_prefs,ls一下会发现.xml文件如下图:

打开.xml文件,格式如下(为什么这样大家自己去理解):

[c-sharp]view plaincopy
  1. <?xmlversion='1.0'encoding='utf-8'standalone='yes'?><map><intname="counter"value="3"/></map>

OK,今天就到此为止,以上全是个人愚见,如果有什么地方不对的,请指正,谢谢大家!

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  3. 由Android4.4收起写sdcard文件权限想到的.
  4. Android的多语言文件转IOS多语言文件格式
  5. Android中音乐文件的信息详解【安卓源码解析二】
  6. .Myeclipse中配置ADT
  7. 向Eclipse导入linux编译生成的jar包,调试android原生app
  8. Android支持的资源
  9. Android中的签名机制

随机推荐

  1. 挖掘更合适的MVP模式的架构设计
  2. Android上实现仿IOS弹性ListView
  3. android给listview的item设定高度
  4. Android 'showAsAction' in package 'and
  5. android图片特效处理之光晕效果
  6. android 字体&颜色
  7. android junit入门(一) JUNIT测试
  8. 四大布局
  9. Android Studio(六):Android Studio添加注
  10. ADT对应的.android中找不到adb_usb.ini