【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(二十)

课程地址: 黑马程序员HarmonyOS4+NEXT星河版入门到企业级实战教程,一套精通鸿蒙应用开发

(本篇笔记对应课程第 30 节)

P30《29.数据持久化-用户首选项》

实现数据持久化在harmonyOS中有很多种方式,比较常见的是以下两种:

读取项目持久化文件,这是一个IO操作,比较耗时,因此是一个异步操作,返回一个Promise对象:

将 routerInfo 类定义到 viewmodel 目录下的一个文件中:

改造首页,增加一个设置字体大小的功能:

实现用户持久化:

1、在 util 目录下定义一个 PreferenceUtil.ts 的首选项工具类文件:

2、定义加载 Preference 方法:

异步写法:

同步写法:

语句后输入 .if 可快速将前面的语句包裹在 if() 中:

3、定义写入 Preference 方法:

4、定义读取 Preference 方法:

5、在 Ability 的 onCreate 钩子函数中加载 Preference:

6、在首页中使用 获取 Preference 方法:


7、字号改变时写入 Preference :

测试:

测试 Preference 必须用模拟器

启动模拟器:

点击 返回 按钮,应用关闭,Ability被销毁:

再次打开应用,发现数据持久化效果成功了!

实践:

DevEco Studio 常用快捷键

相关推荐
灯澜忆梦几秒前
MySQL 完整学习路线
学习·mysql
番茄育学园13 分钟前
我的三款主流云存储音乐库实测笔记
笔记·分类·媒体
绝世番茄1 小时前
鸿蒙原生ArkTS布局方式之Stack+Opacity叠加淡入淡出深度解析
华为·harmonyos·鸿蒙
森林古猿11 小时前
再论斜率优化
c++·学习·算法
心中有国也有家2 小时前
鸿蒙Flutter开发环境从零搭建教程(Windows/macOS双平台·避坑版)
学习·flutter·华为·harmonyos
十月的皮皮3 小时前
C语言学习笔记20260706-栈的压入、弹出序列验证
c语言·笔记·学习
心中有国也有家4 小时前
Flutter 鸿蒙适配第一步:从 hive 迁移到 hive\_ce
hive·学习·flutter·华为·harmonyos
渣渣灰飞4 小时前
MySQL 系统学习 第二阶段 第三章 DQL(Data Query Language)第二节:WHERE 条件查询
sql·学习·mysql
维他奶糖614 小时前
基于 DrissionPage 实现小红书搜索笔记批量采集
笔记
心中有国也有家5 小时前
AtomGit Flutter 鸿蒙客户端:E-Brufen 架构设计
学习·flutter·华为·harmonyos