位置: 编程技术 - 正文

在偏好文件中存储数据(在文件中偏移量为)

编辑:rootadmin

推荐整理分享在偏好文件中存储数据(在文件中偏移量为),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:在偏好文件中存放什么,在偏好文件中存放什么,偏好显示的途径有,偏好显示的途径有,在偏好文件中存放的文件,偏好显示的途径有,偏好设置文件已损坏或无效,在偏好文件中存放的文件,内容如对您有帮助,希望把文章链接给更多的朋友!

SharedPreferences对象使用常规的XML文件来存储数据,这些文件存储在应用程序的数据目录内。该XML文件的结构很简单,因为它只允许存储键/&#;对,不过Android API还提供了非常方便的抽象,允许开发者以类型安全的方式读写数据。

创建SharedPreferences对象最简单的方式是使用PreferenceManager.getDefaultSharedPreferences()方法,它会返回应用程序默认的偏好对象。使用该方式来存储主要的偏好设置很方便,因为框架会自动管理好文件名。但是,如果应用程序有多个偏好文件,最好使用Context.getSharedPreference()方法,它允许开发者自由地命名文件。如果只是创建和Activity相关的偏好文件,可以使用Activity.getPreference()方法,它会在调用时得到Activity的名字。

PreferenceManager.getDefaultSharedPreferences()创建的偏好文件名是由包名以及后缀_preferences组成的,如com.liyuanjinglyj.code_preferences。虽然很少需要这个名字,但如果要实现文件备份代理该名字就很重要。

SharedPreferences支持的存储&#;的类型有int,float.long.boolean,String以及set<String>对象。键名必须是一个有效的字符串,常见的做法是使用点符号按组结构化多个键&#;。

例如,如果偏好文件包含用于网络配置以及用户界面设置相关的&#;,可以通过为每个键添加network或者ui前缀来把它们分组。通过该方式,开发者可以轻松的管理键/&#;对,避免命名冲突。下面的例子演示了如何通过使用前缀并在单独的Java接口文件中定义键来结构化偏好数据:

在偏好文件中存储数据(在文件中偏移量为)

推荐使用上面的方法访问存储的偏好&#;,而不是把键名硬编码在代码中。这样做可以避免误拼写,从而减少由于拼写导致的bug。

下面的代码演示了使用之前定义的Constants类来访问偏好文件:

要修改存储在偏好文件中的&#;,首先需要获取Editor实例,它提供了相应的PUT方法,以及用于提交修改的方法。在Android2.3之前,通过使用commit()方法把修改同步提交到存储设备中。但在2.3版本中,Editor提供了用于异步执行写操作的apply()方法。因为要尽可能地避免在主线程执行阻塞的操纵,apply()方法比之前的commit()方法更好。这使得在主线程直接从UI操作更新SharedPreferences很安全。

上面的代码显示了使用点击监听器来切换存储在Constants.NETWORK_WIFI_ONLY中的偏好&#;。如果使用之前的commit()方法,主线程可能会被阻塞,导致用户体验差。使用apply()方法就不需要担心上面的问题。

在同一个进程中,每个偏好文件都只有实例。所以即便从二个不同的组件使用相同的名字获取二个SharedPreference对象,它实际上还是共享同一个实例,所以对于一个对象的改变会立即影响到另一个对象。

为了能在偏好&#;被修改的时候收到通知,开发者需要注册一个监听器回调函数,每当调用apply()或者commit()方法时都会触发该监听器回调函数。最常见的例子是,在Activity中修改偏好&#;应该影响后台Service的行为,如下所示:

【Android开发】 如何隐藏ListView的滚动条? setScrollbarFadingEnabled(true);Definewhetherscrollbarswillfadewhentheviewisnotscrolling.不活动的时候隐藏,活动的时候显示;setVerticalScrollBarEnabled(true);不活动的时候隐藏

Android下基于权限的恶意软件检测系统——APK Auditor APKAuditor:Permission-basedAndroidmalwaredetectionsystem,DigitalInvestigation(SCI,IF=0.),年6月[1

可扩展的android重打包工具 今天看了一下当初的打包工具。学习了点技术。然后git上找了个相的工程代码研究了一下。觉得制作一个脚本语言的工具会快很多。而程序员很多时候

标签: 在文件中偏移量为

本文链接地址:https://www.jiuchutong.com/biancheng/384316.html 转载请保留说明!

上一篇:如何在Android studio中同时打开多个工程?(如何在android studio中导入其他包)

下一篇:【Android开发】 如何隐藏ListView的滚动条?(android开发范例实战宝典)

  • 企业所得税核定征收税率表最新
  • 进出口环节增值税计税基础
  • 计提环境保护税怎么计算
  • 公司名下的房产过户到个人要交多少税
  • 受雇于两家公司个税怎么汇算清缴
  • 企业所得税季报营业收入,营业成本怎么填
  • 餐饮公司开分店还需要办手续吗
  • 营改增后工程税收怎么计算
  • 签章是签字还是盖章z还是手印
  • 资产负债表试算平衡表是什么
  • 事业单位财务收支
  • 房地产企业临时售楼部房产据含土地价值吗
  • 周转借款会计分录
  • 劳务派遣简易征收备案
  • 增值税专用发票验证真伪
  • 发票查询显示无数据怎么回事
  • 价外费用如何开普票
  • 购买方纳税人识别号是什么意思
  • 资产类账户的期末余额计算公式
  • 生产成本为什么不属于费用
  • 进出口总额比上年同期
  • 赔偿款和罚款是一样的吗
  • 公户以借款形式打款给个人,对个人有影响么?
  • 未分配利润为什么不分配
  • 农贸市场可以收什么的费
  • 科技型企业科研项目申报
  • 没有单据怎么核算成本?
  • 员工辞退补偿金发放逾期
  • 无法访问移动网络怎么办
  • 低值易耗品报废账务处理
  • win11预览版dev改beta
  • pavsrv50.exe - pavsrv50进程管理信息
  • windows7旗舰版最新版本
  • 购买增值税税控系统专用设备账务处理
  • 2020年农业病虫害
  • 生产成本二级科目会计分录
  • php 替换函数
  • echarts遇到的坑
  • 李牧其人
  • 这年头不好混图片
  • vue修饰词
  • mongodb开启远程连接
  • SQLite3 命令行操作指南
  • 织梦如何采集文章
  • 现金发放工资会扣税吗
  • 收到固定资产抵账账务处理
  • 无形资产如何计提减值
  • 小规模纳税人开专票税率是1%还是3%
  • 哪种情形的货物或者服务可以采用竞争性谈判方式采购
  • 支付稿费怎么做凭证
  • 电子承兑汇票的风险有哪些
  • 工资表明细表
  • 不征税发票和零税率发票
  • 注册资本金印花税税率是2.5还是5
  • 执行企业会计准则的非上市企业
  • 持有待售的非流动资产减值能转回吗
  • 房地产企业预收账款
  • 非营利医疗机构免征哪几种税
  • 深入sql编程开发与优化
  • xp系统怎么创建本地连接2
  • xp系统玩游戏卡吗
  • wcu.exe是什么
  • win7电脑找不到无线网络连接图标
  • win7系统设置只让安装有证书的软件
  • Win7系统安装教程
  • win8如何输入命令
  • express model
  • cocos2d schedule
  • unity用visual
  • opengl shader实例
  • 用js自定义函数生成表格
  • 创建一个批处理文件,其功能是在当前
  • python 初级
  • shell打开日志文件
  • jquery img onload
  • javascript教程chm
  • js获取鼠标坐标到浏览器底部
  • 江西税收优惠
  • 预缴增值税申报表申报期限
  • 在珠海可以做什么生意
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设