功能对比表 + 底部固定按钮 + 服务条款链接布局
前言“海风日记“的 Premium 订阅页底部包含固定按钮和服务条款链接通过 Column 布局实现固定底部区域。本文将从源码出发深入讲解底部固定按钮的布局。一、ImageViewerPage 图片查看器Entry Component struct ImageViewerPage { State currentIndex: number 0 private imageUrls: string[] [image1, image2, image3, image4] build() { Column() { // 顶部操作栏 Row() { Button() { SymbolGlyph($r(sys.symbol.xmark)).fontSize(20).fontColor([#FFFFFF]) } .onClick(() router.back()) Text(${this.currentIndex 1} / ${this.imageUrls.length}) Button() { SymbolGlyph($r(sys.symbol.ellipsis_circle)).fontSize(20).fontColor([#FFFFFF]) } } // 主图片轮播 Swiper() { ForEach(this.imageUrls, (url, idx) { Column() { SymbolGlyph($r(sys.symbol.camera)).fontSize(64) } }) } .layoutWeight(1).indicator(false).loop(false) // 缩略图预览条 Scroll() { Row({ space: 8 }) { ForEach(this.imageUrls, (url, idx) { Column().width(56).height(56).borderRadius(8).backgroundColor(#E8A0A0) .onClick(() { this.currentIndex idx }) }) } } } .backgroundColor(#000000) } }二、PrivacyPasswordPage 隐私密码Entry Component struct PrivacyPasswordPage { State hasPassword: boolean false State isSettingMode: boolean false State password: string private readonly KEY_ROWS: string[][] [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [, 0, del] ] handleKey(key: string) { if (key del) { this.password this.password.substring(0, this.password.length - 1) } else if (key.length 0 this.password.length 6) { this.password key } } build() { // 三态未设置 / 输入密码 / 已设置 if (!this.hasPassword !this.isSettingMode) { // 未设置 } else if (this.isSettingMode) { // 输入密码 } else { // 已设置 } } }三、常见问题 FAQEntry Component struct FaqPage { State faqs: FaqItem[] [ { q: 如何备份我的日记, a: 前往「我的 → 数据管理 → 同步备份」, expanded: false }, { q: 日记内容会加密吗, a: 您的所有日记内容均使用 AES-256 加密存储, expanded: false }, ] build() { ForEach(this.faqs, (item: FaqItem, idx: number) { Column() { Row() { Text(Q).fontSize(12).fontColor(COLOR_WHITE) .width(20).height(20).borderRadius(10).backgroundColor(COLOR_PRIMARY) Text(item.q).fontSize(14).fontColor(COLOR_TEXT_MAIN) SymbolGlyph(item.expanded ? $r(sys.symbol.chevron_up) : $r(sys.symbol.chevron_down)) } .onClick(() { this.faqs[idx] { q: item.q, a: item.a, expanded: !item.expanded } this.faqs [...this.faqs] }) if (item.expanded) { Row() { Text(A).fontSize(12).fontColor(COLOR_WHITE) .width(20).height(20).borderRadius(10).backgroundColor(COLOR_AMBER) Text(item.a).fontSize(13).fontColor(COLOR_TEXT_SECONDARY) } } } }) } }四、总结本文通过“海风日记“的多个高级功能页面深入讲解了图片查看、隐私密码和 FAQ 的实现ImageViewerPageSwiper 轮播 缩略图PrivacyPasswordPage自定义数字键盘 三态切换FaqPage手风琴展开 QA 折叠至此第十二系列“高级功能与特殊页面“全部完成下一篇文章开始进入第十三系列鸿蒙特性与最佳实践。如果这篇文章对你有帮助欢迎点赞、收藏⭐、关注你的支持是我持续创作的动力相关资源Swiper 组件文档Scroll 组件文档海风日记项目源码[HarmonyOS 开发者官网](https://atomgit.com/openharmony/docs开源鸿蒙跨平台社区

相关新闻

零基础语音识别工具评测怎么选

零基础语音识别工具评测怎么选

&esmp;找语音识别工具用来整理入职培训录音、学习产品知识、帮零基础新人快速上手新工作,选的时候记住三个核心判断标准就行:先看日常培训录音的转写准确率够不够,再看能不能帮你把转好的内容整理成可复习的知识点,最后看操作…

2026/8/1 11:57:15 阅读更多 →
CentOS下Node.js与ws模块安装及WebSocket开发指南

CentOS下Node.js与ws模块安装及WebSocket开发指南

1. CentOS下Node.js与ws模块安装指南在服务器端开发中,Node.js因其高效的异步I/O模型和丰富的生态系统成为构建实时应用的首选。而WebSocket协议作为HTML5标准的一部分,为浏览器和服务器之间提供了全双工通信通道。本文将详细介绍在CentOS系统上搭建Node…

2026/8/1 12:23:25 阅读更多 →
2026 Claude国内怎么充值?Pro、Max、API与Claude Code付款指南

2026 Claude国内怎么充值?Pro、Max、API与Claude Code付款指南

国内用户准备给Claude付费时,第一步不是寻找付款渠道,而是先确认自己需要购买哪一种产品。Claude Pro和Max属于聊天订阅,Claude API采用预付额度按量计费;Claude Code既可以使用Pro或Max账号登录,也可以通过Anthropic …

2026/8/1 11:59:12 阅读更多 →

最新新闻

兼容性还是安全性?一个关于 Fastjson 的十年之问

兼容性还是安全性?一个关于 Fastjson 的十年之问

兼容性还是安全性?一个关于 Fastjson 的十年之问在软件工程的世界里,框架设计者时常会面对一道艰难的选择题:当兼容性与安全性发生冲突时,应该站在哪一边?Fastjson 的十年漏洞史,恰好为这道题提供了一个血淋…

2026/8/1 19:04:28 阅读更多 →
九大网盘直链下载助手:告别限速,实现真正的高速下载体验

九大网盘直链下载助手:告别限速,实现真正的高速下载体验

九大网盘直链下载助手:告别限速,实现真正的高速下载体验 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移…

2026/8/1 19:04:28 阅读更多 →
吐血整理深度学习入门路线及导航【教学视频+大神博客+书籍整理】+【资源页】(2019年已经最后一个月了,你还不学深度学习吗???)

吐血整理深度学习入门路线及导航【教学视频+大神博客+书籍整理】+【资源页】(2019年已经最后一个月了,你还不学深度学习吗???)

声明: 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益&#xff0c…

2026/8/1 19:04:28 阅读更多 →
混沌工程终极指南:5分钟掌握ChaosBlade无侵入式故障注入

混沌工程终极指南:5分钟掌握ChaosBlade无侵入式故障注入

混沌工程终极指南:5分钟掌握ChaosBlade无侵入式故障注入 【免费下载链接】chaosblade An easy to use and powerful chaos engineering experiment toolkit.(阿里巴巴开源的一款简单易用、功能强大的混沌实验注入工具) 项目地址: https://g…

2026/8/1 19:03:27 阅读更多 →
Joplin终极指南:如何快速搭建隐私优先的笔记应用开发环境

Joplin终极指南:如何快速搭建隐私优先的笔记应用开发环境

Joplin终极指南:如何快速搭建隐私优先的笔记应用开发环境 【免费下载链接】joplin Joplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS. 项目地址: https://gitcode.com/GitHub_Trending/jo/jopli…

2026/8/1 19:03:27 阅读更多 →
Windows ADB驱动一键安装:3分钟搞定Android连接问题的终极方案

Windows ADB驱动一键安装:3分钟搞定Android连接问题的终极方案

Windows ADB驱动一键安装:3分钟搞定Android连接问题的终极方案 【免费下载链接】Latest-adb-fastboot-installer-for-windows A Simple Android Driver installer tool for windows (Always installs the latest version) 项目地址: https://gitcode.com/gh_mirro…

2026/8/1 19:03:27 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/8/1 13:02:46 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/8/1 10:33:33 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →