From b4f9e89ae51da9bf9e6a1df443c6afbdeff02477 Mon Sep 17 00:00:00 2001 From: wangjiahai <1556608@qq.com> Date: Mon, 4 Dec 2023 15:07:14 +0800 Subject: [PATCH] 111 --- common/nav-calc-utils.js | 44 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/common/nav-calc-utils.js b/common/nav-calc-utils.js index a2e9faf..36bfdfa 100644 --- a/common/nav-calc-utils.js +++ b/common/nav-calc-utils.js @@ -13,8 +13,24 @@ function navParams() { paddingTop: 0, // wx小程序是paddingTop*2 paddingBottom: 0, - // wx小程序是胶囊距离屏幕右侧边界的距离 - paddingRight: 0 + height: 0, + // 导航栏可用高度 高度-内边距 + enableHeight: 0, + // 导航栏字体大小 wx小程序 ios:13,Android:17 + fontSize: 0, + // 导航栏样式 wx小程序时:ios:center,Android:left + style: '', + // 导航栏可用宽度 wx小程序时 ios,Android:屏幕宽-胶囊 + enableWidth: 0, + // 导航栏不可用宽度 wx小程序时 ios,Android:胶囊+胶囊距离屏幕右侧边界的距离 + disableWidth: 0 + }, + window: { + width: 0, + height: 0 + }, + os: { + osName: '' }, // 导航栏整体高度:状态栏+导航啦 navHeight: '0px', @@ -34,6 +50,12 @@ function navParams() { // 状态栏高度 params.statusBarHeight = info.statusBarHeight; + params.window.width = info.screenWidth + params.window.height = info.screenHeight + params.os.osName = info.osName + + // 获取胶囊相关内容 + // 以下示例数据都 来自 iPhoneX 7nWidth // 获取胶囊相关内容 // 以下示例数据都 来自 iPhoneX 75%大小的微信模拟器 @@ -42,7 +64,23 @@ function navParams() { params.menuButton.width = menuButton.width; params.menuButton.height = menuButton.height; params.navBar.paddingTop = menuButton.top - params.statusBarHeight; - params.navBar.paddingBottom = params.navBar.paddingTop * 2; + if (params.os.osName === 'ios') { + params.navBar.paddingBottom = params.navBar.paddingTop * 2; + params.navBar.fontSize = 13; + params.navBar.style = 'center'; + } else { + // Harmony,Android + params.navBar.paddingBottom = params.navBar.paddingTop; + params.navBar.fontSize = 17; + params.navBar.style = 'left'; + // windows、macos 未测试 + } + // params.navBar.paddingRight = params.window.width - menuButton.right; + params.navBar.height = params.menuButton.height + params.navBar.paddingTop + params.navBar.paddingBottom; + // 导航栏可用宽度 屏幕宽度 - 胶囊左侧坐标 + params.navBar.enableWidth = params.window.width - menuButton.left; + params.navBar.disableWidth = params.window.width - params.navBar.enableWidth; + params.navBar.enableHeight = params.navBar.height - params.navBar.paddingTop - params.navBar.paddingBottom; // #endif console.log(params);