| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 9 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 个月前 | ||
| 9 个月前 |
ArkUI设置应用内主题换肤指南文档示例
介绍
本示例通过使用ArkUI指南文档中各场景的开发示例,展示在工程中,帮助开发者更好地理解ArkUI提供的组件及组件属性并合理使用。该工程中展示的代码详细描述可查如下链接:
效果预览
| 组件自定义主题色效果图 | 局部页面自定义主题风格效果图 | 局部深浅色效果图 |
|---|---|---|
![]() |
![]() |
![]() |
使用说明
-
在主界面,可以点击对应页面,选择需要参考的组件示例。
-
在组件目录选择详细的示例参考。
-
进入示例界面,查看参考示例。
-
通过自动测试框架可进行测试及维护。
工程目录
entry/src/main/ets/
├── common
│ └── Resource.ets
├── entryability
│ └── EntryAbility.ets
├── entrybackupability
│ └── EntryBackupAbility.ets
└── pages
├── Index.ets
├── Theme1
│ ├── AppTheme.ets // 自定义主题色
│ └── Theme1.ets // 设置应用内组件自定义主题色
├── Theme2
│ └── Theme2.ets // 应用局部页面自定义主题风格
├── Theme3
│ └── Theme3.ets // 设置应用页面局部深浅色
└── common
└── Index.ets
entry/src/ohosTest/
├── ets
│ └── test
│ ├── Ability.test.ets
│ ├── Index.test.ets // 测试用例代码
│ └── List.test.ets
└── module.json5
具体实现
1. 自定义主题色配置 创建自定义颜色类实现CustomColors接口,定义品牌色、警示色等主题属性,仅需复写需要修改的部分,未修改内容将继承系统默认设置。
2. 主题设置时机 在页面build前通过ThemeControl.setDefaultTheme()设置自定义主题色,确保在组件渲染前应用主题配置。
3. 组件主题响应机制 在自定义组件中使用onWillApplyTheme回调函数获取当前生效的Theme对象,实现主题色的动态应用。
4. UIAbility中的主题设置 在UIAbility的onWindowStageCreate()方法中调用ThemeControl.setDefaultTheme(),统一设置应用内组件的自定义主题色。
5. 局部主题应用 支持在单个页面或组件级别应用自定义主题,通过设置组件的backgroundColor等属性绑定主题色变量,实现局部深浅色切换效果
相关权限
不涉及。
依赖
不涉及。
约束与限制
1.本示例仅支持标准系统上运行, 支持设备:RK3568。
2.本示例为Stage模型,支持API20版本SDK,版本号:6.0.0.33,镜像版本号:OpenHarmony_6.0.0.33。
3.本示例需要使用DevEco Studio 6.0.0 Release (Build Version: 6.0.0.858, built on September 24, 2025)及以上版本才可编译运行。
下载
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo code/DocsSample/ArkUISample/ThemeSkinning > .git/info/sparse-checkout
git remote add origin https://gitcode.com/openharmony/applications_app_samples.git
git pull origin master


