
1 changed files with 83 additions and 84 deletions
@ -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 |
|||
} |
Loading…
Reference in new issue