LinearGradient 线性渐变:从暖金到琥珀的品牌色应用
前言渐变是提升 UI 视觉品质的重要手段。HarmonyOS 提供了LinearGradient和RadialGradient两种渐变方式支持多色阶、角度控制等高级功能。“海风日记“以“日落海景“为设计灵感围绕暖金、琥珀、橙色的渐变体系建立了完整的品牌视觉语言。全项目共有 10 处使用了 LinearGradient 渐变。本文将从源码出发深入讲解 LinearGradient 的完整用法。一、LinearGradient 概述1.1 基本语法Column() .linearGradient({ angle: 160, // 渐变角度度 colors: [ // 色阶数组 [#FFE4B0, 0.0], // [色值, 位置] 0% 位置 [#FFD080, 0.35], // 35% 位置 [#F5A623, 0.70], // 70% 位置 [#C8800A, 1.0], // 100% 位置 ] })1.2 参数说明参数类型说明是否必填anglenumber渐变角度度0 为从左到右90 为从上到下否colors[string, number][]色阶数组每个元素为[色值, 位置]是directionGradientDirection渐变方向枚举与 angle 二选一否1.3 指定方向的方式方式一使用 angle 角度angle: 0 // 从左到右 angle: 90 // 从上到下 angle: 160 // 从左上到右下 angle: 180 // 从下到上 angle: 270 // 从右到左方式二使用 direction 枚举import { GradientDirection } from kit.ArkUI .direction(GradientDirection.TopToBottom) // 从上到下 .direction(GradientDirection.LeftToRight) // 从左到右 .direction(GradientDirection.BottomToTop) // 从下到上 .direction(GradientDirection.RightToLeft) // 从右到左二、海风日记的渐变体系2.1 闪屏页渐变4 色阶Column() .linearGradient({ angle: 160, colors: [ [#FFE4B0, 0.0], // 浅金 [#FFD080, 0.35], // 暖金 [#F5A623, 0.70], // 品牌橙 [#C8800A, 1.0], // 琥珀 ] })2.2 WaveHeaderBand 渐变6 色阶Column() .linearGradient({ angle: 180, colors: [ [COLOR_HEADER_TOP, 0], // 淡橙 [#FFE0B0, 0.2], // 浅金 [#FFE8C8, 0.4], // 暖金 [#FFF0D8, 0.65], // 米白 [#FFF6EC, 0.82], // 暖白 [COLOR_HEADER_BOTTOM, 1.0] // 页面背景色 ] })2.3 写日记页渐变3 色阶Column() .linearGradient({ angle: 160, colors: [ [COLOR_HEADER_TOP, 0.0], // 淡橙 [#FFE0B0, 0.6], // 暖金 [COLOR_HEADER_BOTTOM, 1.0] // 页面背景色 ] })2.4 项目中的渐变场景统计渐变场景色阶数角度起始色结束色闪屏页背景4160°#FFE4B0#C8800AWaveHeaderBand6180°#FFD4A0#FAFAF7写日记页头部3160°#FFD4A0#FAFAF7日历页头部2180°#FFD4A0#FAFAF7个人中心头部3160°#FFD4A0#FAFAF7日记详情页头部3150°#FFD4A0#FFE8C0Premium 页 Banner3160°#FF8C00#FFD47A存储进度条290°#FFD4A0#F5A623三、渐变与品牌色系统3.1 品牌色令牌// Colors.ets — 渐变相关颜色令牌 export const COLOR_HEADER_TOP #FFD4A0 export const COLOR_HEADER_MID #FFE8C8 export const COLOR_HEADER_BOTTOM #FAFAF7 export const COLOR_PRIMARY #F5A623 export const COLOR_PRIMARY_LIGHT #FFBE45 export const COLOR_PRIMARY_DEEP #D4900A export const COLOR_AMBER #C8956A3.2 颜色渐变阶梯闪屏页渐变阶梯从亮到暗 #FFE4B0 (浅金) → #FFD080 (暖金) → #F5A623 (品牌橙) → #C8800A (琥珀) 头部渐变阶梯从亮到背景色 #FFD4A0 (淡橙) → #FFE0B0 (浅金) → #FFE8C8 (暖金) → #FFF0D8 (米白) → #FFF6EC (暖白) → #FAFAF7 (背景)3.3 渐变与品牌一致性设计原则实现方式效果统一色板所有渐变使用同一组颜色令牌视觉一致性统一角度多数使用 160° 或 180° 角度方向统一渐变过渡渐变的结束色与页面背景色一致无缝过渡多色阶3-6 色阶确保渐变平滑层次丰富四、LinearGradient 的高级用法4.1 与 Shadow 结合Column() .linearGradient({ angle: 135, colors: [[COLOR_HEADER_TOP, 0.0], [#FFCC70, 0.6], [#F5A623, 1.0]] }) .shadow({ radius: 20, color: rgba(245,166,35,0.30), offsetY: 6 })4.2 渐变进度条Stack({ alignContent: Alignment.Start }) { // 背景条 Row().height(6).width(100%) .backgroundColor(rgba(200,180,140,0.18)) .borderRadius(3) // 渐变进度条 Row().height(6).width(9%) .linearGradient({ angle: 90, colors: [[COLOR_HEADER_TOP, 0], [COLOR_PRIMARY, 1]] }) .borderRadius(3) }4.3 渐变按钮Button(立即解锁 Premium) .width(100%).height(52) .linearGradient({ angle: 90, colors: [[#FF8C00, 0], [COLOR_PRIMARY, 1]] }) .borderRadius(BTN_RADIUS_FULL)五、LinearGradient 与 RadialGradient 的对比5.1 RadialGradient 径向渐变Column() .radialGradient({ center: [50%, 50%], // 中心点 radius: 50%, // 半径 colors: [ [rgba(245,166,35,0.22), 0.0], [rgba(245,166,35,0.0), 1.0] ] })5.2 两种渐变的对比对比维度LinearGradientRadialGradient渐变方向线性方向径向发散适用场景背景、按钮、进度条光晕、发光效果参数angle colorscenter radius colors视觉效果平面过渡立体光晕六、渐变性能优化6.1 色阶数量控制// 推荐3-6 个色阶即可获得平滑渐变 colors: [[#FFE4B0, 0], [#FFD080, 0.35], [#F5A623, 0.70], [#C8800A, 1.0]] // 避免过多色阶影响性能 colors: [[#FFE4B0, 0], [#FFE6B5, 0.1], [#FFE8BA, 0.2], ...] // 不推荐6.2 避免频繁更新渐变渐变属性变化会触发重绘应避免在动画循环中更新渐变。七、常见问题与排查7.1 渐变不显示问题设置了linearGradient但渐变效果不显示。原因容器没有设置宽高或渐变被其他颜色覆盖。解决方案Column() .width(100%).height(100%) // 必须设置宽高 .linearGradient({...}) // 渐变才能显示7.2 渐变颜色断层问题渐变颜色过渡不平滑出现颜色断层。原因色阶之间的颜色差异过大或色阶数量不足。解决方案增加色阶数量使颜色过渡更平滑。总结本文通过“海风日记“的渐变体系深入讲解了 LinearGradient 的完整用法基本语法angle、colors 参数配置渐变体系闪屏、头部、写日记页等不同场景的渐变设计品牌色系统颜色令牌与渐变的一致性管理高级用法渐变与阴影、进度条、按钮的结合性能优化色阶数量控制、避免频繁更新下一篇文章将深入讲解Swiper 轮播组件实现新用户引导页敬请期待。如果这篇文章对你有帮助欢迎点赞、收藏⭐、关注你的支持是我持续创作的动力相关资源LinearGradient API 文档RadialGradient API 文档ArkUI 颜色管理海风日记项目源码[HarmonyOS 开发者官网](https://atomgit.com/openharmony/docs开源鸿蒙跨平台社区GradientDirection 枚举Shadow 属性文档

相关新闻

5分钟掌握Windows窗口自由:WindowResizer强制调整任意窗口大小

5分钟掌握Windows窗口自由:WindowResizer强制调整任意窗口大小

5分钟掌握Windows窗口自由:WindowResizer强制调整任意窗口大小 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 还在为那些固执的Windows窗口而烦恼吗?老旧软…

2026/7/27 3:48:58 阅读更多 →
Java架构师核心能力:从并发编程到分布式系统设计

Java架构师核心能力:从并发编程到分布式系统设计

1. 从Java开发者到架构师的思维跃迁第一次被称作"架构师"的那个下午,我正对着白板上的分布式事务方案发呆。团队里新来的应届生指着我说:"这个问题得问架构师",我才意识到角色已经转变。Java架构师不是简单的职称升级&am…

2026/7/21 19:20:18 阅读更多 →
Android NDK开发实战:性能优化与JNI接口详解

Android NDK开发实战:性能优化与JNI接口详解

1. 初识Android NDK开发第一次接触NDK开发是在2018年,当时接手一个需要处理大量图像运算的相机项目。Java层的处理速度始终达不到产品要求,帧率卡在15fps上不去。团队里的老工程师建议:"试试用C重写核心算法吧"。就这样&#xff0c…

2026/7/29 1:49:38 阅读更多 →

最新新闻

AI蒸馏技术正在淘汰传统剪枝方案?——GPT-4o实测对比:蒸馏模型在边缘端准确率仅降0.3%却提速11.7倍

AI蒸馏技术正在淘汰传统剪枝方案?——GPT-4o实测对比:蒸馏模型在边缘端准确率仅降0.3%却提速11.7倍

更多请点击: https://intelliparadigm.com 第一章:AI 蒸馏技术介绍 AI 蒸馏(Knowledge Distillation)是一种模型压缩与知识迁移技术,核心思想是让轻量级的“学生模型”学习“教师模型”的输出分布(如软标签…

2026/7/30 12:34:01 阅读更多 →
GHelper终极指南:如何用轻量化工具完全掌控你的华硕笔记本

GHelper终极指南:如何用轻量化工具完全掌控你的华硕笔记本

GHelper终极指南:如何用轻量化工具完全掌控你的华硕笔记本 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook…

2026/7/30 12:34:01 阅读更多 →
离散制造行业MOM系统落地实施指南:从规划到上线的全流程解析

离散制造行业MOM系统落地实施指南:从规划到上线的全流程解析

一、引言:离散制造与MOM系统在离散制造行业(如汽车、电子、机械、航空航天等),生产过程由一系列独立的、离散的工序组成,产品由多个零部件装配而成。制造运营管理(Manufacturing Operations Management, MO…

2026/7/30 12:34:01 阅读更多 →
制造运营管理(MOM)与MES的区别与联系

制造运营管理(MOM)与MES的区别与联系

引言在制造业数字化转型的浪潮中,制造运营管理(Manufacturing Operations Management, MOM)和制造执行系统(Manufacturing Execution System, MES)是两个核心且常被提及的概念。它们既有紧密的联系,又存在本…

2026/7/30 12:34:01 阅读更多 →
深入 std::thread:从编译错误到引用传递的完美解决方案

深入 std::thread:从编译错误到引用传递的完美解决方案

问题产生&#xff1a;一段看似无害的代码 假设我们想在新线程中修改某个外部变量&#xff0c;并且需要同步访问&#xff0c;于是写下了这样的代码&#xff1a; #include <thread> #include <mutex>std::mutex m;void func(int& a, std::mutex& b) {// 对 a…

2026/7/30 12:34:01 阅读更多 →
建研鉴定加固院抚州某医院房屋主体结构安全性鉴定案例分享

建研鉴定加固院抚州某医院房屋主体结构安全性鉴定案例分享

医院是人流密集、连续运转的公共建筑&#xff0c;其房屋安全直接关系患者与医护人员。江西抚州市某医院即对房屋主体结构进行了安全性鉴定&#xff0c;检测围绕混凝土强度、梁板碳化及新增构件连接等关键项展开&#xff0c;现场可见梁板火烧碳化、新增砼柱未与下层柱可靠连接等…

2026/7/30 12:33:01 阅读更多 →

日新闻

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具:DriverStoreExplorer完全指南

Windows驱动存储终极清理工具&#xff1a;DriverStoreExplorer完全指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 您是否曾因Windows系统盘空间不足而烦恼&#xff1f;是否遇到过设…

2026/7/30 0:00:13 阅读更多 →
如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper:网页视频下载的完整实战指南

如何3步掌握Video Download Helper&#xff1a;网页视频下载的完整实战指南 【免费下载链接】VideoDownloadHelper Chrome Extension to Help Download Video for Some Video Sites. 项目地址: https://gitcode.com/gh_mirrors/vi/VideoDownloadHelper 你是否曾经在浏览…

2026/7/30 0:00:13 阅读更多 →
“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

“双减”后首个AI备课压力测试报告:覆盖32所中小学的176节AI辅助课,暴露4大隐性增负节点

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI 教师备课辅助 AI 教师备课辅助系统正逐步成为教育数字化转型的核心支撑工具&#xff0c;它并非替代教师&#xff0c;而是通过语义理解、知识图谱与多模态生成能力&#xff0c;将教师从重复性劳动中解…

2026/7/30 0:00:13 阅读更多 →

周新闻

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

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

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

2026/7/29 22:18:20 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

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

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

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

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

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

2026/7/29 15:00:03 阅读更多 →

月新闻