Skip to content

mpx.setNavigationBarColor(Object object) ​

设置页面导航条颜色

支持情况:微信、支付宝、RN、web

参考文档

Web 的 frontColor、backgroundColor 会更新当前页面的内建标题栏,背景色同时写入浏览器 theme-color。内建标题栏需预先启用 Mpx.config.webConfig.enableTitleBar,API 不会自动显示已关闭或通过 navigationStyle: 'custom' 隐藏的标题栏;frontColor 不控制 WebView 宿主状态栏。RN 会更新内建标题栏的前景色、背景色及状态栏文字样式,更新接口不可用时触发 fail 和 complete。

Web 获取不到当前页面实例时触发 fail 和 complete,不会修改导航栏配置或浏览器主题色。请在页面 onMounted(选项式为 [MOUNTED])或之后调用。

参数 ​

Object object

属性类型默认值必填说明支付宝RNweb
frontColorstring是前景颜色值,包括按钮、标题、状态栏的颜色,仅支持 #ffffff 和 #000000✓✓✓
backgroundColorstring是背景颜色值,有效值为十六进制颜色✓✓✓
animationObject否动画效果✗✗✗
结构属性类型默认值必填说明
durationnumber0否动画变化时间,单位 ms
timingFuncstring'linear'否动画变化方式
合法值说明
'linear'动画从头到尾的速度是相同的
'easeIn'动画以低速开始
'easeOut'动画以低速结束
'easeInOut'动画以低速开始和结束
successfunction否接口调用成功的回调函数✓✓✓
failfunction否接口调用失败的回调函数✓✓✓
completefunction否接口调用结束的回调函数(调用成功、失败都会执行)✓✓✓

Web 和 RN 会校验颜色参数:frontColor 仅接受 #ffffff / #000000,backgroundColor 接受 #RGB / #RRGGBB 格式。参数无效时触发 fail 与 complete,且不会修改导航栏配置或浏览器主题色。

示例代码 ​

js
mpx.setNavigationBarColor({
  frontColor: '#ffffff',
  backgroundColor: '#ff0000',
  animation: {
    duration: 400,
    timingFunc: 'easeIn'
  }
})