完善工具类
This commit is contained in:
@@ -1,85 +1,84 @@
|
||||
function navParams() {
|
||||
|
||||
let params = {
|
||||
// 是否支持自定义导航栏(小程序 pc版 false)
|
||||
supportCustomBar: true,
|
||||
// 胶囊
|
||||
menuButton: {
|
||||
width: 0,
|
||||
height: 0
|
||||
},
|
||||
// 导航栏
|
||||
// 可自定义,wx小程序会强制更改
|
||||
navBar: {
|
||||
height: 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: ''
|
||||
},
|
||||
// 导航栏+状态栏高度
|
||||
navStatusHeight: '0px',
|
||||
// 状态栏高度
|
||||
statusBarHeight: 0,
|
||||
unit: 'px'
|
||||
}
|
||||
|
||||
// 同步获取信息
|
||||
let info = uni.getSystemInfoSync();
|
||||
|
||||
// 状态栏高度
|
||||
params.statusBarHeight = info.statusBarHeight;
|
||||
params.window.width = info.screenWidth
|
||||
params.window.height = info.screenHeight
|
||||
params.os.osName = info.osName
|
||||
|
||||
// 获取胶囊相关内容
|
||||
// #ifdef MP-WEIXIN
|
||||
let menuButton = uni.getMenuButtonBoundingClientRect();
|
||||
params.menuButton.width = menuButton.width;
|
||||
params.menuButton.height = menuButton.height;
|
||||
let paddingTop = menuButton.top - params.statusBarHeight;
|
||||
let paddingBottom = 0;
|
||||
if (params.os.osName === 'ios') {
|
||||
paddingBottom = paddingTop * 2;
|
||||
params.navBar.fontSize = 13;
|
||||
params.navBar.style = 'center';
|
||||
} else if (params.os.osName === 'android') {
|
||||
paddingBottom = paddingTop;
|
||||
params.navBar.fontSize = 17;
|
||||
params.navBar.style = 'left';
|
||||
} else if (params.os.osName === 'windows') {
|
||||
params.supportCustomBar = false;
|
||||
} else {
|
||||
// 未测试
|
||||
paddingBottom = paddingTop;
|
||||
params.navBar.fontSize = 17;
|
||||
params.navBar.style = 'left';
|
||||
// macos 未测试
|
||||
}
|
||||
params.navBar.height = params.menuButton.height + paddingTop + paddingBottom;
|
||||
// 导航栏可用宽度 屏幕左边界到胶囊左边界
|
||||
params.navBar.enableWidth = menuButton.left;
|
||||
params.navBar.disableWidth = params.window.width - params.navBar.enableWidth;
|
||||
// #endif
|
||||
|
||||
params.navStatusHeight = params.statusBarHeight + params.navBar.height
|
||||
|
||||
console.log(params);
|
||||
return params
|
||||
}
|
||||
|
||||
export {
|
||||
navParams
|
||||
function navParams() {
|
||||
|
||||
let params = {
|
||||
// 是否支持自定义导航栏(小程序 pc版 false)
|
||||
supportCustomBar: true,
|
||||
// 胶囊
|
||||
menuButton: {
|
||||
width: 0,
|
||||
height: 0
|
||||
},
|
||||
// 导航栏
|
||||
// 可自定义,wx小程序会强制更改
|
||||
navBar: {
|
||||
height: 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: ''
|
||||
},
|
||||
// 导航栏+状态栏高度
|
||||
navStatusHeight: '0px',
|
||||
// 状态栏高度
|
||||
statusBarHeight: 0,
|
||||
unit: 'px'
|
||||
}
|
||||
|
||||
// 同步获取信息
|
||||
let info = uni.getSystemInfoSync();
|
||||
|
||||
// 状态栏高度
|
||||
params.statusBarHeight = info.statusBarHeight;
|
||||
params.window.width = info.screenWidth
|
||||
params.window.height = info.screenHeight
|
||||
params.os.osName = info.osName
|
||||
|
||||
// 获取胶囊相关内容
|
||||
// #ifdef MP-WEIXIN
|
||||
let menuButton = uni.getMenuButtonBoundingClientRect();
|
||||
params.menuButton.width = menuButton.width;
|
||||
params.menuButton.height = menuButton.height;
|
||||
let paddingTop = menuButton.top - params.statusBarHeight;
|
||||
let paddingBottom = 0;
|
||||
if (params.os.osName === 'ios') {
|
||||
paddingBottom = paddingTop * 2;
|
||||
params.navBar.fontSize = 13;
|
||||
params.navBar.style = 'center';
|
||||
} else if (params.os.osName === 'android') {
|
||||
paddingBottom = paddingTop;
|
||||
params.navBar.fontSize = 17;
|
||||
params.navBar.style = 'left';
|
||||
} else if (params.os.osName === 'windows' || params.os.osName === 'mac') {
|
||||
params.supportCustomBar = false;
|
||||
} else {
|
||||
// 未知系统按照Android处理
|
||||
paddingBottom = paddingTop;
|
||||
params.navBar.fontSize = 17;
|
||||
params.navBar.style = 'left';
|
||||
}
|
||||
params.navBar.height = params.menuButton.height + paddingTop + paddingBottom;
|
||||
// 导航栏可用宽度 屏幕左边界到胶囊左边界
|
||||
params.navBar.enableWidth = menuButton.left;
|
||||
params.navBar.disableWidth = params.window.width - params.navBar.enableWidth;
|
||||
// #endif
|
||||
|
||||
params.navStatusHeight = params.statusBarHeight + params.navBar.height
|
||||
|
||||
console.log(params);
|
||||
return params
|
||||
}
|
||||
|
||||
export {
|
||||
navParams
|
||||
}
|
||||
Reference in New Issue
Block a user