• 使用uniapp框架编译多端,在使用自定义导航栏的时候需要适配不同手机,在安卓和ios上手机的状态栏高度是不一样的,尤其是小程序。
  • uni.getSystemInfo();
//在小程序上使用这个方法去获取,应为iphonex的高度和其他型号的高度不一样。还有就是var(--status-bar-height)在小程序中是固定的25px,不会去适配iphonex
uni.getSystemInfo({
	success: (data) => {
		data.statusBarHeight => 手机状态栏高度
		data.statusBarHeight + 44 => ios手机状态栏+导航栏高度
	}
});
//在app上,官方封装好的一个css变量
var(--status-bar-height) => 手机状态栏高度
//使用:例
height: var(--status-bar-height);
var(--window-bottom) => tabbar的高度
var(--window-top) => 内容区域距离顶部的距离
  • 利用上面的方法,就可以封装一个自定义的导航栏组件
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐