Android-SharedPreference
来源:互联网 发布:软件项目经理管理办法 编辑:程序博客网 时间:2024/06/04 21:16
SharedPreferences 是一种轻型的数据存储方式,它的本质是基于XML文件存储Key-Value键值对数据,通常用来存储一些简单的配置信息,其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改时通过Editor对象实现。
SharedPreferences对象与SQLite数据库相比,免去了创建数据库,创建表,写SQL语句等操作,更加易用。但是SharedPreferences仅支持以下数据类型:
- boolean
- int
- float
- long
- String
但是无法进行条件查询等,所以不论SharedPreferences的数据存储操作是如何简单,它也只能是存储方式的一种补充,而无法完全替代如SQLite数据库等其他数据存储方法。
SharedPreferences preferences = getPreferences(Activity.MODE_PRIVATE);Editor editor = preferences.edit();
写入数据:
editor.putString(KEY, et.getText().toString());if (editor.commit()) { Toast.makeText(getApplicationContext(), "写入成功", Toast.LENGTH_SHORT).show();}
读取数据
String string = preferences.getString(KEY, "当前数值不存在");Toast.makeText(getApplicationContext(), string, Toast.LENGTH_SHORT).show();
PreferenceActivity
SharedPreference 是纯操作,如果需要配合界面的话,则需要额外的开发,PreferenceActivity提供了一种快速创建配置首选项界面的方法,并且自动在后台存储首选项数据。
为操作PreferenceActivity,可先在res文件加下新建一个xml文件夹,然后在xml文件夹下创建一个名为myprefrence.xml的xml文件,如下:
新建一个名为MyPreferenceActivity,继承自PreferenceActivity,重写onCreate()方法:
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.myprefrence);}
PreferenceActivity中主要使用到有三种内容的Preference:
CheckBoxPreference
在myprefrence.xml的xml中,如下定义:
<CheckBoxPreference android:key="checkbox" android:summaryOff="已近关闭" android:summaryOn="已经开启" android:title="是否开启" />
获取状态:
PreferenceManager manager = getPreferenceManager(); checkBoxPreference = (CheckBoxPreference) manager.findPreference("checkbox"); Toast.makeText(getApplicationContext(), "当前的状态为:"+checkBoxPreference.isChecked(), Toast.LENGTH_SHORT).show();
ListPreference
定义:
<ListPreference android:key="list" android:title="选择一个选项" android:summary="请点击选择" android:entries="@array/entries" android:entryValues="@array/values"/>
获取状态:
listPreference = (ListPreference) manager.findPreference("list"); Toast.makeText(getApplicationContext(), listPreference.getEntry()+"当前的开发环境:"+listPreference.getValue(), Toast.LENGTH_SHORT).show();
EditTextPreference
定义:
<EditTextPreference android:dialogTitle="请输入你的名字" android:dialogMessage="有劳了" android:summary="请在此输入" android:title="请输入" android:key="text"/>
获取状态
editTextPreference = (EditTextPreference) manager.findPreference("text"); Toast.makeText(getApplicationContext(), editTextPreference.getText(), Toast.LENGTH_SHORT).show();
- android sharedPreference
- Android Sharedpreference
- Android-SharedPreference
- Android SharedPreference
- Android SharedPreference
- Android SharedPreference
- Android中SharedPreference实例
- Android--SharedPreference应用
- Android--SharedPreference应用
- Android中SharedPreference实例
- Android之SharedPreference
- Android--SharedPreference应用
- Android之SharedPreference
- android 之SharedPreference
- Android提供SharedPreference
- android sharedpreference 保存对象
- Android中SharedPreference实例
- Android SharedPreference工具包
- C/C++常用头文件及函数汇总
- 组件主流程
- JAVA监听器添加的四种方式(自身、外部类、内部类、匿名类)
- TCO 2015 Round 1A DIV 1 1000
- Effective C++笔记_条款43 学习处理模板化基类内的名称
- Android-SharedPreference
- secureCRT和secureFX真的太方面了!!!
- [授权发表]开源书籍:《C语言编程透视》
- MPI、PThread笔记
- 分而治之策略
- java反射
- 最快最简单的排序---(初级)桶排序
- java编程思想学习
- 一步一步开发sniffer(Winpcap+MFC)(二)掀起你的盖头来,让我来画你的脸——用MFC开发GUI