当前位置: 首页 > news >正文

第23篇|深浅色适配:颜色资源不是装饰,而是可维护系统

这篇从工程骨架切入,先把入口、配置和状态约定讲清楚,再落到用户能看到的页面效果。本篇主题是「深浅色适配:颜色资源不是装饰,而是可维护系统」,目标是把源码、效果和工程质量放到同一篇文章里讲透。

本文是 21 天「智能相机开发实战」训练营第 5 天的第 5 篇。

这篇解决什么问题

  • 读懂本篇能力在「双镜记忆相机」中的用户价值。
  • 从源码中定位关键入口,而不是只停留在概念介绍。
  • 把页面效果、状态流转和失败态串成一个可复现的小闭环。

代码来自哪里

  • entry/src/main/resources/base/element/color.json
  • entry/src/main/resources/dark/element/color.json

本篇优先阅读entry/src/main/resources/base/element/color.json,下面的片段保留项目中的真实命名,方便你在 DevEco Studio 中直接搜索。

{ "color": [ { "name": "start_window_background", "value": "#F5F8FB" }, { "name": "ml_background", "value": "#F5F8FB" }, { "name": "ml_surface_lowest", "value": "#FFFFFF" }, { "name": "ml_surface_low", "value": "#F8FBFD" }, { "name": "ml_surface_high", "value": "#E8F0F6" }, { "name": "ml_surface_highest", "value": "#D6E4EC" }, { "name": "ml_outline_variant", "value": "#8EA2B1" }, { "name": "ml_on_surface", "value": "#111A24" },

源码拆解

  • 先看入口变量或函数:它决定能力从哪个页面、哪个服务或哪个系统配置开始。
  • 再看状态字段:页面上的按钮、提示、加载态通常不是临时文案,而是这些状态的投影。
  • 最后看结果写回:拍摄、定位、AI、同步或分享能力最终都要回到记录模型、页面刷新或用户反馈。

跑出来是什么效果

结合页面效果,本文重点观察:

  • 深浅色对比截图
  • 颜色 token 表

流程串联:配置入口 -> 状态初始化 -> 页面构建 -> 用户可见效果

从页面效果看,关键不是单点能力,而是让用户动作、源码状态和结果反馈保持一致。

实操步骤

  1. 在 DevEco Studio 打开项目,先搜索本文列出的主文件。
  2. 顺着源码片段中的变量或函数名继续查找调用点。
  3. 在真机上运行到对应页面,观察截图中的成功态是否与源码状态一致。
  4. 主动制造一次失败态,例如拒绝权限、断网、无数据或能力不支持。
  5. 把成功态、失败态、源码片段和页面截图串成完整实操闭环。

工程质量点

  • 先画入口链路,再讲局部实现,读者不会迷路。
  • 状态字段按业务域分组讲解,避免把 Index.ets 当成散乱变量清单。
  • 配置、资源和页面代码一起看,才能解释最终效果。
  • 源码截图只截关键函数,不截整屏代码,方便读者跟着定位。
  • 效果图和流程路径一一对应,避免只讲原理却看不到用户结果。

质量分自评

维度分值本篇检查点
源码准确度28/30代码片段来自项目文件,变量名和函数名保持原样。
效果可见性22/25页面效果与流程路径能说明从点击到结果的路径。
实操完整度19/20读者能按文章复现一个最小操作闭环。
工程质量13/15覆盖失败态、状态边界或隐私边界中的关键点。
表达清晰度10/10标题、截图说明和源码说明互相对齐。
合计92/100达到训练营发布质量线。

今日作业

  1. 从本文列出的入口文件开始,画一张你自己的调用链路图。
  2. 找出一个可复用的状态字段,说明它影响了哪些页面。
  3. 用真机截图验证页面效果,并和源码中的状态字段对应起来。

完成作业后,下一篇继续沿着同一条源码路径往下走:先做出效果,再把工程边界讲清楚。

http://www.jsqmd.com/news/910295/

相关文章:

  • 惠州黄金上门回收平台主流大盘点2026 - 黄金回收
  • 2026沃尔玛购物卡回收实测测评!4大正规平台对比,按需选不踩坑 - 博客万
  • 2026苏州启获客怎么样?解析GEO优化服务核心价值 - 品牌排行榜
  • 免检木箱真的能免检吗?东莞布伦特包装一次说清楚:免检、熏蒸、真空木箱的区别与选型指南 - 资讯焦点
  • 从AD/ADS转战Cadence OrCAD 17.4:一个电磁场硕士的软件迁移实战笔记(附新建工程踩坑点)
  • 2026年无锡滴滴跑网约车官方租车门店地址6月更新 - 速递信息
  • 大型设备怎么打包才安全?东莞布伦特包装:8支驻厂服务队 8000平工厂,专治“非标重货”包装难题 - 资讯焦点
  • 无锡回收爱马仕包包 如何找到出价公道的店家 - 合扬奢侈品交易中心
  • 2026年新疆高品质深度游与研学党建红培定制服务完全指南 - 年度推荐企业名录
  • WTG系统用着用着蓝屏了?别慌,这可能是你热插拔U盘惹的祸(附系统重置与文件抢救指南)
  • 基于MOSFET的防反接保护电路:原理、设计与实战
  • 基于ESP32与SA818模块构建可编程2米波段无线电实验平台
  • 石榴花开映槐荫、和融同心润民生
  • 2026年5月29日鹰潭黄金回收价格参考与避坑指南 - 润富黄金珠宝行
  • 2026 年九华山好吃徽菜馆口碑推荐榜:九华山必吃美食、九华山农家土菜、九华山实惠餐饮、九华山必打卡的土菜馆选择指南,食材、口味、服务三维度权威解析 - 海棠依旧大
  • 2026年5月最新|企业必看:宁波GEO优化公司哪家靠谱?主流服务商综合实力解析 - 商业新知
  • 微信怎么发起投票功能【新手实测简单教程】 - 微信投票小程序
  • 赣州黄金回收市场调研:5家连锁门店资质测评+2026实时金价+客户真实反馈 - 润富黄金珠宝行
  • Fluent仿真翻车实录:用了NIST真实气体模型,结果却不收敛?这7个坑我帮你踩过了
  • 基于WS2812B与ESP8266的大型可编程LED螺旋灯制作全攻略
  • League Akari:基于LCU API的英雄联盟智能工具集技术深度解析
  • Mac + 手机 + 多电脑如何同步同一份文件夹?
  • 基于ESP32与MAX7219的复古LED点阵机架显示器DIY全攻略
  • 设备出口包装怕卡关?东莞布伦特包装:从国标参编到IPPC出证,一站式解决出口木箱合规难题 - 资讯焦点
  • 质量流量计:无需温压补偿,质量流量计直接测量流体质量 - 仪表人叶工
  • 三步轻松搞定网页视频下载:VideoDownloadHelper终极使用指南
  • 吉安黄金回收门店实测|2026 实时金价 + 上门 / 到店服务对比 + 真实体验案例 - 润富黄金珠宝行
  • 2026 Word转PDF保姆级教程:官方方法和一键转换手把手教你
  • 树莓派+热敏打印机打造自动日历打印终端:物联网与Python自动化实践
  • 第四封信:谈人工智能时代的教育