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 自定义页面状态栏的核心代码了,这样的自定义状态栏是自动适配手机的状态栏的。

相关推荐
星光不问赶路人15 小时前
vue3使用jsx语法详解
前端·vue.js
天蓝色的鱼鱼15 小时前
shadcn/ui,给你一个真正可控的UI组件库
前端
布列瑟农的星空15 小时前
前端都能看懂的Rust入门教程(三)——控制流语句
前端·后端·rust
Mr Xu_15 小时前
Vue 3 中计算属性的最佳实践:提升可读性、可维护性与性能
前端·javascript
jerrywus15 小时前
我写了个 Claude Code Skill,再也不用手动切图传 COS 了
前端·agent·claude
玖月晴空15 小时前
探索关于Spec 和Skills 的一些实战运用-Kiro篇
前端·aigc·代码规范
子兮曰15 小时前
深入理解滑块验证码:那些你不知道的防破解机制
前端·javascript·canvas
会一丢丢蝶泳的咻狗15 小时前
Sass实现,蛇形流动布局
前端·css
攀登的牵牛花16 小时前
前端向架构突围系列 - 状态数据设计 [8 - 4]:有限状态机 (FSM) 在复杂前端逻辑中的应用
前端
Lsx_16 小时前
前端视角下认识 AI Agent 和 LangChain
前端·人工智能·agent