uniapp 自定义手机顶部状态栏(适配状态栏高度)

开启页面自定义导航栏功能

uniapp 在 pages.json 页面设置了全局的 globalStyle 的 "navigationStyle": "custom" 或单页面的 style 的 "navigationStyle": "custom" 之后页面顶部就没有自带的导航栏了,这时用户可自定义该页面的顶部导航栏。

示例代码

HTML

html 复制代码
<template>
	<view class="page">
		<view :style="{width: '100%', height: statusBarHeight + 'px'}"></view>
		<view class="top-tab flex-c" :style="{height: navHeight + 'px'}">
			<view class="title" v-if="title">{{title}}</view>
		</view>
	</view>
</template>

js(示例为:vue 3 的 js)

javascript 复制代码
<script setup>
	import {
		ref,
		reactive
	} from 'vue'
	
	// 手机屏幕信息
	const window = uni.getWindowInfo()
	// 胶囊信息
	let menu = uni.getMenuButtonBoundingClientRect()

	const statusBarHeight = ref(0)
	statusBarHeight.value = window.statusBarHeight // 手机状态栏高度
	const navHeight = ref(0)
	navHeight.value = (menu.top - window.statusBarHeight) * 2 + menu.height // 导航栏高度
	
</script>

以上就是关于 uniapp 自定义页面状态栏的核心代码了,这样的自定义状态栏是自动适配手机的状态栏的。

相关推荐
无羡仙39 分钟前
从零构建 Vue 弹窗组件
前端·vue.js
源心锁2 小时前
👋 手搓 gzip 实现的文件分块压缩上传
前端·javascript
源心锁2 小时前
丧心病狂!在浏览器全天候记录用户行为排障
前端·架构
GIS之路2 小时前
GDAL 实现投影转换
前端
烛阴3 小时前
从“无”到“有”:手动实现一个 3D 渲染循环全过程
前端·webgl·three.js
BD_Marathon3 小时前
SpringBoot——辅助功能之切换web服务器
服务器·前端·spring boot
Kagol3 小时前
JavaScript 中的 sort 排序问题
前端·javascript
eason_fan3 小时前
Service Worker 缓存请求:前端性能优化的进阶利器
前端·性能优化
光影少年3 小时前
rn如何和原生进行通信,是单线程还是多线程,通信方式都有哪些
前端·react native·react.js·taro
好大哥呀4 小时前
Java Web的学习路径
java·前端·学习