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

HarmonyOS 6 AtomicServiceTabs 图标加文本(自定义图文排布)使用文档

文章目录

    • 核心说明
      • 1. 图标 + 文本组合样式(基础形态)
      • 2. 自定义图文排布(layoutMode)
    • 代码核心配置
      • 1. 导入依赖
      • 2. 状态定义
      • 3. TabBarOptions(图标+文本核心配置)
      • 4. 布局模式绑定
      • 5. 动态切换布局按钮
    • 支持的事件回调
      • 1. onTabBarClick
      • 2. onContentWillChange
      • 3. onChange
    • 图文排布效果说明
      • 1. VERTICAL 垂直布局
      • 2. HORIZONTAL 水平布局
    • 总结

核心说明

1. 图标 + 文本组合样式(基础形态)

AtomicServiceTabs通过TabBarOptions实现图标+文本组合展示:

newTabBarOptions(icon:$r('sys.media.ohos_ic_public_phone'),// 图标资源text:'绿色',// 标签文本color:Color.Black,// 未选中颜色selectedColor:Color.Red// 选中颜色)

✅ 同时配置icon + text→ 自动渲染为图标+文本导航项
✅ 支持统一设置未选中/选中状态颜色
✅ 支持系统图标、本地图标混用


2. 自定义图文排布(layoutMode)

layoutMode是控制图标与文本排列方向的核心属性,支持两种模式:

枚举值含义展示效果
LayoutMode.VERTICAL垂直排布(默认)图标在上,文本在下
LayoutMode.HORIZONTAL水平排布图标在左,文本在右

你代码中通过按钮动态修改this.layoutMode可实时切换布局,符合 HarmonyOS 6 官方标准用法。


代码核心配置

1. 导入依赖

import{AtomicServiceTabs,TabBarOptions,TabBarPosition,OnContentWillChangeCallback}from'@kit.ArkUI';

2. 状态定义

@StatelayoutMode:LayoutMode=LayoutMode.VERTICAL;

初始布局:图标在上、文字在下

3. TabBarOptions(图标+文本核心配置)

tabBarOptionsArray:[newTabBarOptions($r('sys.media.ohos_ic_public_phone'),'绿色',Color.Black,Color.Red),newTabBarOptions($r('sys.media.ohos_ic_public_location'),'蓝色',Color.Black,Color.Red),newTabBarOptions($r('sys.media.ohos_ic_public_more'),'黄色',Color.Black,Color.Red),]

4. 布局模式绑定

layoutMode:this.layoutMode

5. 动态切换布局按钮

Button("layoutMode垂直 ").onClick(()=>{this.layoutMode=LayoutMode.VERTICAL;})Button("layoutMode水平 ").onClick(()=>{this.layoutMode=LayoutMode.HORIZONTAL;})

运行效果如图:


支持的事件回调

1. onTabBarClick

  • 触发时机:点击标签项时
  • 用途:点击埋点、状态统计

2. onContentWillChange

  • 触发时机:页面切换之前
  • 参数:currentIndex / comingIndex
  • 返回 boolean:true 允许切换,false 禁止切换

3. onChange

  • 触发时机:页面切换完成后
  • 用途:切换完成后的业务逻辑

图文排布效果说明

1. VERTICAL 垂直布局

  • 图标在上
  • 文本在下
  • 底部导航最常用样式

2. HORIZONTAL 水平布局

  • 图标在左
  • 文本在右
  • 适合顶部标签栏或宽屏导航

总结

  1. 必须同时传入 icon 和 text才能显示图标+文本
  2. layoutMode仅控制排列方向,不影响颜色、选中状态
  3. 该组件仅支持原子化服务(Atomic Service)工程
  4. HarmonyOS 6 完整支持动态修改layoutMode实时刷新布局
  5. 颜色统一作用于:图标 + 文本(选中/未选中)

如果这篇文章对你有帮助,欢迎点赞、收藏、关注,你的支持是持续创作的动力

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

相关文章:

  • SpringBoot+Vue高校机动车认证信息管理系统源码+论文
  • 免费降重工具精选:AI智能改写高效降低重复率 - 仙仙学姐测评
  • Python map、filter、zip 三大函数式核心用法与工程实践
  • 别再踩坑了!手把手教你用Selenium驱动360极速浏览器(附版本匹配避坑指南)
  • 企业级AI分类系统上线倒计时72小时:紧急补漏清单(含权限穿透、语义漂移、冷启动三重熔断机制)
  • 社区搜索技术:从同质图到异质图的算法演进
  • SpringBoot+Vue高校教室设备故障报修信息管理系统源码+论文
  • 2026年评价高的光伏支架主流厂家对比评测 - 品牌宣传支持者
  • 2026年口碑好的舟山工业园区/定海工业园区/浙江工业园区热门排行榜 - 行业平台推荐
  • 从数电实验箱到FPGA开发板:重温74LS138三八译码器,并用它搭建全加器电路
  • 别再手动修模型了!用Python的scipy.spatial.Delaunay快速搞定点云三角化(附实战代码)
  • PhysicsFormer:Transformer在物理信息神经网络中的创新应用
  • 从HFSS仿真到PCB打样:手把手教你搞定四臂螺旋天线的移相功分网络
  • MTKClient终极指南:联发科设备刷机救砖专业工具详解
  • 别再凭感觉绕电感了!手把手教你用200股李兹线给T106-2磁环绕制4.5uH电感(附计算与实测翻车记录)
  • 面试必问!!!:整数在计算机中是怎么保存的?
  • 论文AIGC率怎么降?2026实测SpeedAI领跑多平台横评 - 仙仙学姐测评
  • Java:Java后端开发,本地开发环境,服务器部署环境,运维支撑环境 都需要哪些类别的工具或技术 / Java后端三大环境完整清单 202606
  • 小Why的密码锁【牛客tracker 每日一题】
  • Inference与Prediction的本质区别:从机器学习工程实践看系统层与算法层的分界
  • 从Hello World到第一个项目:用VS Code + Rust-Analyzer插件打造你的高效Rust工作流
  • 别只盯着物种丰度图了!16S报告里这3个高级功能(LEfSe、FAPROTAX、随机森林)才是发文章的关键
  • JSON对比终极指南:3分钟掌握可视化差异分析神器
  • 2026年四川商用摆摊大伞/岗亭遮阳伞公司对比推荐 - 行业平台推荐
  • 115. 全机型救砖方案汇总|高通EDL/MTK刷写/苹果DFU黑砖修复实操教程
  • Claude深度集成开发工作流:工程化上下文管理实践
  • arXiv投稿避坑实录:从邮箱注册到.bbl文件,新手必看的5个细节
  • 2026实用降AI工具测评:选这几款高效不踩坑 - 老米_专讲AIGC率
  • 2026年评价高的哈尔滨收银系统/哈尔滨小程序开发/哈尔滨GEO/哈尔滨电子签品质保障公司 - 品牌宣传支持者
  • Steam挂刀行情站:数据驱动的饰品交易智能决策系统