发布时间:2026/7/18 5:37:53
HarmonyOS7 HdsNavigation 滚动联动标题栏:让页面更像系统应用 文章目录外层就是 HdsNavigation标题栏配置bindToScrollable 的作用为什么要 MINI 标题模式安全区交给自己处理写在最后智感握姿示例不是只做了底部导航顶部标题栏也用了HdsNavigation。这部分很容易被忽略但它决定页面有没有系统应用那种细腻感。项目源码https://gitcode.com/HarmonyOS_Samples/SmartReach/tree/master外层就是 HdsNavigationMainPage.ets的build()从这里开始build(){HdsNavigation(){RelativeContainer(){HdsTabs({controller:this.controller}){// TabContent}}}.hideBackButton(true).titleMode(HdsNavigationTitleMode.MINI).mode(NavigationMode.Stack)}HdsNavigation负责页面导航框架里面再放RelativeContainer和HdsTabs。标题栏配置标题栏内容在.titleBar()里.titleBar({content:{title:{mainTitle:$r(app.string.SmartReachAbility_label),},},style:{scrollEffectOpts:{enableScrollEffect:true,scrollEffectType:ScrollEffectType.GRADIENT_BLUR,blurEffectiveEndOffset:LengthMetrics.vp(64),},systemMaterialEffect:{materialType:hdsMaterial.MaterialType.ADAPTIVE,materialLevel:hdsMaterial.MaterialLevel.ADAPTIVE,},},avoidLayoutSafeArea:false,enableComponentSafeArea:false,})这里有两个关键词GRADIENT_BLUR和ADAPTIVE。前者让滚动时标题栏有渐变模糊效果后者让系统材质根据环境自适应。bindToScrollable 的作用页面最后还有一行.bindToScrollable(SCROLLER_LIST)这行把导航栏和滚动容器关联起来。SCROLLER_LIST来自TabsBarModel.etsexportconstSCROLLER_LIST:Scroller[]newArray(4).fill(null).map(()newScroller());每个 tab 一个Scroller每个WaterFlowView用对应下标WaterFlow({scroller:SCROLLER_LIST[this.currentTabIndex],sections:this.getSections}){// FlowItem}这样标题栏才知道当前页面在滚动滚动效果才能跟上。为什么要 MINI 标题模式示例用了.titleMode(HdsNavigationTitleMode.MINI)智感握姿页面内容以图片瀑布流为主标题不需要占太大空间。MINI模式更克制页面看起来不会头重脚轻。安全区交给自己处理最后这行也值得看.ignoreLayoutSafeArea([LayoutSafeAreaType.SYSTEM],[LayoutSafeAreaEdge.TOP,LayoutSafeAreaEdge.BOTTOM])项目选择忽略系统安全区然后自己通过WindowUtil和GlobalInfoModel控制顶部、底部留白。这样做更灵活但也要求你自己把安全区处理好。写在最后很多示例项目只把功能跑通页面质感一般。但这个项目用了HdsNavigation、滚动绑定、渐变模糊和系统材质整体更接近真实应用。小白学习时别只看“功能 API”这些界面细节同样值得抄作业。

相关新闻

2026/7/18 5:37:53

TM4C123 PWM高级应用:故障安全与同步更新机制实战解析

1. 项目概述与核心价值在嵌入式系统开发,尤其是电机控制、开关电源和LED调光这类对实时性和可靠性要求极高的领域,脉宽调制(PWM)模块的稳定运行是项目成败的关键。很多开发者初期只关注如何生成一个特定频率和占空比的PWM波&#…

2026/7/18 5:37:53

HarmonyOS7 PreferenceManager 本地存储封装:小项目也要写得稳

文章目录为什么需要 Preferences单例写法初始化依赖 UIContextsetValue 做了 JSON 序列化getValue 再解析回来如果要做“不再提示”怎么写写在最后智感握姿项目里有个 PreferenceManager,目前用得不算多,但它的封装方式值得单独讲。小项目也提前封装本地…

2026/7/18 5:32:49

智慧校园新篇章:AI模型在作业批改与讲解中的应用探索

智慧校园新篇章:AI模型在作业批改与讲解中的应用探索 在智慧校园的建设浪潮中,教育技术的革新正以前所未有的速度改变着传统的教学模式。其中,人工智能(AI)模型的应用尤为引人注目,特别是在作业批改与讲解环…

2026/7/18 6:27:55

NestJS全栈开发实战:前端工程师转型企业级后端指南

这次我们来看一个前端程序员转型全栈工程师的实战路径——NestJS从基础搭建到企业级开发的完整指南。对于有26年前端经验的开发者来说,掌握NestJS意味着能够快速构建可维护的后端服务,突破技术栈边界。NestJS作为Node.js的渐进式框架,最大的特…

2026/7/18 6:27:55

MissionControl:解锁Switch蓝牙控制器生态的终极解决方案

MissionControl:解锁Switch蓝牙控制器生态的终极解决方案 【免费下载链接】MissionControl Use controllers from other consoles natively on your Nintendo Switch via Bluetooth. No dongles or other external hardware neccessary. 项目地址: https://gitcod…

2026/7/18 6:27:55

PS Vita数字版权管理解决方案:NoNpDrm插件完全指南

PS Vita数字版权管理解决方案:NoNpDrm插件完全指南 【免费下载链接】NoNpDrm A plugin that allows you to bypass DRM protection on any PS Vita content 项目地址: https://gitcode.com/gh_mirrors/no/NoNpDrm 你是否曾为PlayStation Vita的数字版权限制感…

2026/7/18 6:27:55

BUCK电路电感选型:核心参数与工程实践指南

1. BUCK电路电感选型的核心挑战在开关电源设计中,BUCK电路(降压型DC-DC转换器)的电感选型直接关系到整个系统的效率、稳定性和可靠性。其中,电感额定电流的选择尤为关键,它需要同时满足稳态工作和瞬态响应的双重需求。…

2026/7/17 5:59:06

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南

3步解锁音乐自由:ncmdumpGUI终极NCM文件解密转换指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&#…

2026/7/17 1:21:45

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境

CANoe 19 SP3 配置 GB/T 27930-2023 A类系统:3步搭建BMS仿真测试环境随着新能源汽车行业的快速发展,充电通信协议的标准化和测试验证变得尤为重要。GB/T 27930-2023作为中国智能充电协议的最新版本,对充电机与电动汽车之间的通信提出了更严格…

2026/7/17 7:39:19

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡

3步搞定RTL8852BE驱动:从零开始配置Wi-Fi 6网卡 【免费下载链接】rtl8852be Realtek Linux WLAN Driver for RTL8852BE 项目地址: https://gitcode.com/gh_mirrors/rt/rtl8852be 还在为Linux系统无法识别RTL8852BE Wi-Fi 6网卡而烦恼吗?&#x1f…

2026/7/18 0:00:24

某智驾大牛创业

作者:钟声编辑:Mark出品:红色星际头图:智能驾驶图片据悉,国内某头部智驾公司端到端模型技术大牛Z投身创业,并且已经拿到融资。Z不仅是该头部公司内部最年轻的对标阿里P10级别技术负责⼈,更是业内…

2026/7/17 14:59:44

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…