posts - 296,comments - 1,views - 2995

一.所花时间

0.5h

二.代码量

20行

三.博客量

1篇

四.了解到的知识点

SharedPreferences是Android的一个轻量级存储工具,它采用的存储结构是Key-Value的键值对方式,类似于Java的Properties,二者都是把Key-Value的键值对保存在配置文件中。不同的是,Properties的文件内容形如Key=Value,而SharedPreferences的存储介质是XML文件,且以XML标记保存键值对。保存共享参数键值对信息的文件路径为:/data/data/应用包名/shared_prefs/文件名.xml。

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
 <map>
 <string name="name">Mr Lee</string>
 <int nane="age" value="30"/>
 <boolean name="married" value="true" />
 <float name="weight" value="100.0"/>
 </map>

基于XML格式的特点,共享参数主要用于如下场合:
(1)简单且孤立的数据。若是复杂且相互关联的数据,则要保存于关系数据库。
(2)文本形式的数据。若是二进制数据,则要保存至文件。
(3)需要持久化存储的数据。App退出后再次启动时,之前保存的数据仍然有效。
实际开发中,共享参数经常存储的数据包括:App的个性化配置信息、用户使用App的行为信息、临时需要保存的片段信息等。

共享参数对数据的存储和读取操作类似于Map,也有存储数据的put方法,以及读取数据的get方法。调
用getSharedPreferences方法可以获得共享参数实例

// 从share.xml获取共享参数实例
SharedPreferences shared = getSharedPreferences("share", MODE_PRIVATE)

往共享参数存储数据要借助于Editor类

SharedPreferences.Editor editor = shared.edit();  // 获得编辑器的对象
editor.putString("name", "Mr Lee");  // 添加一个名为name的字符串参数
editor.putInt("age", 30);  // 添加一个名为age的整型参数
editor.putBoolean("married", true);  // 添加一个名为married的布尔型参数
editor.putFloat("weight", 100f);  // 添加一个名为weight的浮点数参数
editor.commit();  // 提交编辑器中的修改

从共享参数读取数据相对简单,直接调用共享参数实例的get * * * 方法即可读取键值,注意 get***方法的第二个参数表示默认值

String name = shared.getString ( "name.","");//从共享参数获取名为name的字符串
int age = shared.getInt ("age",0);// 从共享参数获取名为age 的整型数
boolean married = shared.getBoolean ( "married"false);//从共享参数获取名为married
的布尔数
float weight = shared.getFloat ( "weight"0);//从共享参数获取名为weight的浮点数

 

posted on   leapss  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示