uni-app 之 设置 tabBar

tabBar 是移动应用中常见的导航模式,uni-app 提供了丰富的 API 来动态控制 tabBar 的外观和行为。

1. uni.setTabBarItem(object)

动态设置 tabBar 某一项的内容

参数说明
属性类型默认值必填说明
indexnumbertabBar 的哪一项,从左边算起
textstringtab 上的按钮文字
iconPathstring图片路径,icon 大小限制为 40kb
selectedIconPathstring选中时的图片路径,icon 大小限制为 40kb
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
uni.setTabBarItem({index:0,text:"首页",iconPath:"/static/icon/home.png",selectedIconPath:"/static/icon/home-active.png",});

2. uni.setTabBarStyle(object)

动态设置 tabBar 的整体样式

参数说明
属性类型默认值必填说明
colorstringtab 上的文字默认颜色
selectedColorstringtab 上的文字选中时的颜色
backgroundColorstringtab 的背景色
borderStylestringtabBar 上边框的颜色,仅支持 black/white
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
uni.setTabBarStyle({color:"#7A7E83",selectedColor:"#007AFF",backgroundColor:"#F8F8F8",borderStyle:"black",});

3. uni.hideTabBar(object)

隐藏 tabBar

参数说明
属性类型默认值必填说明
animationbooleanfalse是否需要动画效果
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 隐藏 tabBar,带动画效果 uni.hideTabBar({animation:true,});

4. uni.showTabBar(object)

显示 tabBar

参数说明
属性类型默认值必填说明
animationbooleanfalse是否需要动画效果
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 显示 tabBar,带动画效果 uni.showTabBar({animation:true,});

5. uni.setTabBarBadge(object)

为 tabBar 某一项右上角添加文本

参数说明
属性类型默认值必填说明
indexnumbertabBar 的哪一项,从左边算起
textstring显示的文本,超过 4 个字符则显示为 …
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 为第一个 tab 添加 badge uni.setTabBarBadge({index:0,text:"3",});

6. uni.removeTabBarBadge(object)

移除 tabBar 某一项右上角的文本

参数说明
属性类型默认值必填说明
indexnumbertabBar 的哪一项,从左边算起
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 移除第一个 tab 的 badge uni.removeTabBarBadge({index:0,});

7. uni.showTabBarRedDot(object)

显示 tabBar 某一项的右上角红点

参数说明
属性类型默认值必填说明
indexnumbertabBar 的哪一项,从左边算起
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 显示第一个 tab 的红点 uni.showTabBarRedDot({index:0,});

8. uni.hideTabBarRedDot(object)

隐藏 tabBar 某一项的右上角红点

参数说明
属性类型默认值必填说明
indexnumbertabBar 的哪一项,从左边算起
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数
示例代码
// 隐藏第一个 tab 的红点 uni.hideTabBarRedDot({index:0,});

完整示例

exportdefault{methods:{// 初始化 tabBar 样式initTabBar(){// 设置 tabBar 整体样式 uni.setTabBarStyle({color:"#7A7E83",selectedColor:"#007AFF",backgroundColor:"#FFFFFF",borderStyle:"black",});// 设置各 tab 项 uni.setTabBarItem({index:0,text:"首页",iconPath:"/static/tabbar/home.png",selectedIconPath:"/static/tabbar/home-selected.png",}); uni.setTabBarItem({index:1,text:"分类",iconPath:"/static/tabbar/category.png",selectedIconPath:"/static/tabbar/category-selected.png",}); uni.setTabBarItem({index:2,text:"购物车",iconPath:"/static/tabbar/cart.png",selectedIconPath:"/static/tabbar/cart-selected.png",}); uni.setTabBarItem({index:3,text:"我的",iconPath:"/static/tabbar/user.png",selectedIconPath:"/static/tabbar/user-selected.png",});},// 更新购物车数量显示updateCartBadge(count){if(count >0){ uni.setTabBarBadge({index:2,text: count.toString(),});}else{ uni.removeTabBarBadge({index:2,});}},// 显示消息红点showMessageDot(show){if(show){ uni.showTabBarRedDot({index:3,});}else{ uni.hideTabBarRedDot({index:3,});}},// 在特定页面隐藏 tabBarhideTabBarInPage(){ uni.hideTabBar({animation:true,});},// 返回页面时显示 tabBarshowTabBarInPage(){ uni.showTabBar({animation:true,});},},mounted(){this.initTabBar();},};

注意事项

  1. 所有 tabBar 相关 API 都需要在 tabBar 已经初始化完成后再调用
  2. iconPathselectedIconPath 必须使用本地资源路径
  3. badge 文本超过 4 个字符会显示为 …
  4. 红点和 badge 不能同时显示在同一项上
  5. 在不同平台上的表现可能会有细微差异
  6. 修改 tabBar 样式时建议在应用启动时进行,避免频繁修改影响性能

Read more

Whisper Large v3模型解释:语音特征提取与处理

Whisper Large v3模型解释:语音特征提取与处理 1. 技术背景与问题提出 随着全球化进程的加速,多语言语音识别技术在跨语言交流、内容创作、教育辅助和无障碍服务等场景中展现出巨大潜力。然而,传统语音识别系统往往针对单一语言进行优化,难以应对复杂的多语种混合环境。此外,构建高精度的语音识别模型通常需要大量标注数据和计算资源,这对开发者提出了严峻挑战。 OpenAI推出的Whisper系列模型为这一难题提供了突破性解决方案。其中,Whisper Large v3作为该系列中最强大的版本之一,具备1.5B参数规模,支持99种语言的自动检测与转录,并能在翻译任务中保持高质量输出。其核心优势在于通过大规模弱监督训练,在无需人工标注的情况下实现了卓越的语言泛化能力。 本文将深入解析Whisper Large v3模型中的语音特征提取与处理机制,重点剖析其如何从原始音频信号中提取关键信息,并转化为可被神经网络理解的表示形式。我们将结合实际部署案例(基于Gradio构建的Web服务),揭示该模型在工程落地过程中的关键技术细节与优化策略。 2. 核心概念解析 2.1 Whis

PPIO x MosuMosu:用 AI Copilot 重新定义年轻人的追星体验

PPIO x MosuMosu:用 AI Copilot 重新定义年轻人的追星体验

2025 年,大模型能力的突破正在催生一个全新的 AI Native 创业时代,新的 AI 公司在这一波技术蜕变中被快速孵化。 大模型不是在修补旧流程,而是把产品、业务乃至组织方式都重新想象。昨天还不切实际的方向,如今在模型推理成本下降、多模态突破、Agentic Infra 不断成熟之后,正在从“看似不可能”转向“正在发生”。 MosuMosu 就是 AI Native 创业浪潮的一员。 跟很多公司想做人人皆可用的大众化 AI 助手不同,MosuMosu 聚焦在一个看似小众却充满热情的市场——Oshikatsu(推活),致力于为追星群体打造下一代 AI Copilot。 为了实现这一目标,MosuMosu 选择与 PPIO 合作,PPIO 为 MosuMosu 提供了强大的算力与模型服务,在垂直文化社区的深度应用开辟了新的道路。 1. 生成式 AI

VR华夏神舟——沉浸式遨游太空,解锁航天科普新体验

VR华夏神舟——沉浸式遨游太空,解锁航天科普新体验

一、基本介绍 VR华夏神舟是一款聚焦航天科普教育的创新体验设备,以逼真太空场景模拟、沉浸感官动效和专业航天知识科普为核心亮点。设备外观高度还原神舟飞船返回舱经典半球形造型,舱体线条流畅,科技感十足;核心配置涵盖VR智能头显、动感舱体平台、智能触屏中控等,搭配多重体感特效与环绕音效,打造“视觉+听觉+体感+交互”的全维度沉浸体验。体验者可身临其境感受火箭发射、太空行走、月球登陆等场景,在趣味交互中系统学习航天知识,激发航天热情与民族自豪感。 二、核心定位 系统核心定位为“全年龄段航天科普沉浸式体验载体”,核心目标是通过科技与教育的趣味结合,让航空航天知识科普具象化,降低知识理解门槛,激发学习者的主动探索兴趣,推动航空航天教育创新与全民科学素养提升。受众覆盖全年龄段,尤其适合青少年、亲子群体、航天科普入门者,适配学校航天教育、科普展馆体验、亲子科教活动、社区科普宣传等多场景需求。 三、核心优势 360°全景沉浸,体验感震撼:搭载360°沉浸式VR头显,1:1还原太空实景,呈现地球视角、

Llama Factory终极指南:无需本地GPU,云端一键部署大模型训练平台

Llama Factory终极指南:无需本地GPU,云端一键部署大模型训练平台 对于小型创业团队来说,快速验证基于大语言模型的产品想法往往面临两大难题:高昂的硬件投入和陡峭的技术学习曲线。LLaMA Factory 作为一款开源的大模型训练与微调平台,正好能解决这些痛点。本文将带你通过云端环境,无需本地GPU即可快速部署和体验LLaMA Factory的全部功能。 为什么选择LLaMA Factory? LLaMA Factory 是一个专注于大模型训练、微调和部署的开源框架,具有以下核心优势: * 零代码操作:提供直观的Web UI界面,无需编写代码即可完成模型微调 * 多模型支持:兼容LLaMA、Mistral、Qwen、ChatGLM等主流开源模型 * 全流程覆盖:从数据准备、模型训练到服务部署一站式解决 * 资源友好:支持量化、LoRA等轻量级微调技术,降低硬件需求 这类任务通常需要GPU环境,目前ZEEKLOG算力平台提供了包含LLaMA Factory的预置镜像,可以快速部署验证。 快速部署LLaMA Factory环境 1. 登录ZEEKLOG