SharedPreferences(转)
[功能]
大家在android开发中 一点有这样的需求 就是需要保存一下与该程序有关的属性设置的问题
比如:window xp 中 <假设系统盘为 C:/> 的位置为: C:\Program Files
那么在android中是怎样呢? 那就是:SharedPreferences
既然它是用来保存数据的 那么一点下面问题:
1. 如何创建
2. 如何加入数据
3. 如何取出数据
因为 很多程序都有这个需要 所以自己把该功能集成并列出一些接口函数 以后用的话 会方便很多 这个类名为:SharedPreferencesHelper
[代码]
1. 以指定名字来创建
- SharedPreferences sp;
- SharedPreferences.Editor editor;
- Context context;
- public SharedPreferencesHelper(Context c,String name){
- context = c;
- sp = context.getSharedPreferences(name, 0);
- editor = sp.edit();
- }
2. 以键值<String Key,String Value> 的方式加入数据
- public void putValue(String key, String value){
- editor = sp.edit();
- editor.putString(key, value);
- editor.commit();
- }
3. 以 String Key 为索引来取出数据
- public String getValue(String key){
- return sp.getString(key, null);
- }
4. 如何使用 SharedPreferencesHelper
- package com.android.SharedPreferences;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.TextView;
- /*
- * to access from: data/data/com.android.SharedPreferences/share_prefs
- */
- public class SharedPreferencesUsage extends Activity {
- public final static String COLUMN_NAME ="name";
- public final static String COLUMN_MOBILE ="mobile";
- SharedPreferencesHelper sp;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //setContentView(R.layout.main);
- sp = new SharedPreferencesHelper(this, "contacts");
- //1. to store some value
- sp.putValue(COLUMN_NAME, "Gryphone");
- sp.putValue(COLUMN_MOBILE, "123456789");
- //2. to fetch the value
- String name = sp.getValue(COLUMN_NAME);
- String mobile = sp.getValue(COLUMN_MOBILE);
- TextView tv = new TextView(this);
- tv.setText("NAME:"+ name + "\n" + "MOBILE:" + mobile);
- setContentView(tv);
- }
- }
5. 其他问题
* 文件存放路径: 因为我的这个例子的pack_name 为:package com.android.SharedPreferences;
所以存放路径为:data/data/com.android.SharedPreferences/share_prefs/contacts.xml
* contacts.xml 的内容为:
- <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
- <map>
- <string name="mobile">123456789</string>
- <string name="name">Gryphone</string>
- </map>
* 取出的数据为:
- SharedPreferencesUsage.rar (23 KB)
- 下载次数: 353
转载自: http://www.iteye.com/topic/573212
SharedPreferences(转)的更多相关文章
- Android之SharedPreferences数据存储
一.SharedPreferences保存数据介绍 如果有想要保存的相对较小键值集合,应使用SharedPreferences API.SharedPreferences对象指向包含键值对的文件并提供 ...
- SharedPreferences 的另一种场景的用法
SharedPreferences 的另一种场景的用法 昨天,下班在家想做什么来着,然后想用SharedPreferences存点数据,但是不知道咋地突然想到,SharedPreferences是应用 ...
- 取代SharedPreferences的多进程解决方案
Android的SharedPreferences用来存储一些键值对, 但是却不支持跨进程使用. 跨进程来用的话, 当然是放在数据库更可靠啦, 本文主要是给作者的新库PreferencesProvid ...
- 简单的学习心得:网易云课堂Android开发第五章SharedPreferences与文件管理
一.SharedPreferences (1)SharedPreferences能够用来保存一些属于基本数据类型的数据. (2)保存数据,删除数据都是由SharedPreferences的内部接口Ed ...
- android SharedPreferences 存储对象
我们知道SharedPreferences只能保存简单类型的数据,例如,String.int等. 如果想用SharedPreferences存取更复杂的数据类型(类.图像等),就需要对这些数据进行编码 ...
- Android SharedPreferences公共类sharedhelper
SimpAndroidFarme是近期脑子突然发热想做的android快速开发的框架,目标是模块化 常用的控件,方便新手学习和使用.也欢迎老鸟来一起充实项目:项目地址 sharedpreference ...
- Android SharedPreferences存储
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SharedPreferences.html 一 概念 SharedPreferen ...
- Android——SharedPreferences
SharedPreferences是一种轻型的Android数据存储方式,用来保存应用的一些常用配置. 实现SharedPreferences存储的步骤如下: 1.根据Context获取SharedP ...
- SharedPreferences 详解
获取SharedPreferences的两种方式: 1 调用Context对象的getSharedPreferences()方法 2 调用Activity对象的getPreferences()方法 两 ...
- Tray - a SharedPreferences replacement for Android
一个代替SharedPreferences的开源库, no Editor, no commit() no apply(),因此不存在UI卡顿现象,并且支持多线程,在一个线程中存另一个线程中取数据. h ...
随机推荐
- android-android各大手机系统打开权限管理页面
android系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框. 而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置.这就导致了很不好的用户体验. 经 ...
- Ubuntu 中软件的安装、卸载以及查看的方法总结
Ubuntu 中软件的安装.卸载以及查看的方法总结 博客分类: Linux UbuntuDebian配置管理CacheF# 说明:由于图形化界面方法(如Add/Remove... 和Synaptic ...
- Lamp学习笔记
1,php.ini 文件在哪里 /opt/app/php-5.3/etc/php.ini -------------------------------------------- 2014-0 ...
- 习惯mac . OS X 安装MacPorts
1. 安装必要的软件 安装MacPorts需要先安装X11和Xcode,Lion系统已经默认安装好了X11,在Appstore里安装Xcode即可. 下载完Xcode之后,一般路径在/Applicat ...
- cocos基础教程(4)基础概念介绍
在Cocos2d-x-3.x引擎中,采用节点树形结构来管理游戏对象,一个游戏可以划分为不同的场景,一个场景又可以分为不同的层,一个层又可以拥有任意个可见的游戏节点(即对象,游戏中基本上所有的类都派生于 ...
- MSSQL复习
1.用户角色: 登录名就相当于一个用户 角色相当于把你的操作权限分组了 2.数据系统结构(略) 网络连接接口 关系引擎 存储引擎 内存 3.数据库的结构 数据库 架构 对象(在Sql server中将 ...
- 为nginx增加nginx_http_concat模块
为nginx增加nginx_http_concat模块 时间 2013-06-05 22:14:56 我行我思 原文 http://www.fanjun.me/?p=562 主题 Nginx 缘由 ...
- Verify Preorder Serialization of a Binary Tree
One way to serialize a binary tree is to use pre-order traversal. When we encounter a non-null node, ...
- Selenium webdriver 学习总结-元素定位
Selenium webdriver 学习总结-元素定位 webdriver提供了丰富的API,有多种定位策略:id,name,css选择器,xpath等,其中css选择器定位元素效率相比xpath要 ...
- Greedy:三角形问题
题目大意:有n根长度的为a1,a2....an的棒子,如果棒子可以组成三角形,求这些棒子能组成的三角形的最大周长? 这一题,一般人只能想到三重循环,当然我们是CS专业的,不能这样想,其实这题可以用DP ...