wangjiahai 2 years ago
parent
commit
b4f9e89ae5
  1. 44
      common/nav-calc-utils.js

44
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);

Loading…
Cancel
Save