背景:不用官方默认的导航栏,想用自己自定义的
实现效果:
关键词:顶部状态栏、顶部导航栏、顶部状态导航栏、胶囊
原理:
自定义导航栏无非就是求得导航栏高度,并让内容容器垂直方向居中于导航栏高度
1.获取手机系统状态栏高度
2.获取胶囊位置(包括高度)
3.求得导航栏高度(导航栏高度实际上就是胶囊高度+高度差*2)
高度差 = 胶囊位置到屏幕顶部距离(menu.top,menu为胶囊位置对象)-状态栏高度(直接获取res.statusBarHeight)
(所有单位长度默认px)
// 获取手机系统信息
wx.getSystemInfo({
success: res => {
// 手机系统状态栏高度
wx.setStorageSync('statusBarHeight', res.statusBarHeight)
const platform = res.platform
const menu = wx.getMenuButtonB