uniapp获取各平台(含小程序)状态栏和标题栏高度

  1. 先看图片中的位置区域
    在这里插入图片描述
  2. 微信小程序小胶囊
    在这里插入图片描述

获取方法示例代码

data: {
  statusBarHeight: 0, //状态栏高度,单位:px
  titleBarHeight: 0, //标题栏高度,单位:px
  headerHeight:0 , //页面头部高度,单位:px
}

onLoad() {
   //1.得到 状态栏高度,单位:px
   this.statusBarHeight = uni.getSystemInfoSync().statusBarHeight;
   /* 或:
   const SystemInfo = wx.getSystemInfoSync();
   this.statusBarHeight = SystemInfo.statusBarHeight;
   */
 },
 
 onReady() {
   //2.计算 标题栏高度,单位:px,计算公式:小胶囊高度 + (顶部距离 - 状态栏高度) * 2
   this.titleBarHeight = (uni.getMenuButtonBoundingClientRect().top - this.statusBarHeight) * 2 +
     uni.getMenuButtonBoundingClientRect().height;
   //3.计算 页面头部高度,单位:px,计算公式:导航栏高度 + 状态栏高度
   this.headerHeight = this.statusBarHeight + this.titleBarHeight;
 }
 
 
<!-- - Style动态绑定01 -->
<view :style="{'top':`${statusBarHeight}px`}"></view>


<!-- - Style动态绑定02 -->
<view :style="[viewHeight()]">
computed: {
    //Style动态绑定02
	viewHeight() {
		let that = this;
		console.log('状态栏高度:',that.statusBarHeight);
		console.log('导航栏高度:',that.titleBarHeight);
	    return () => {
	        let that = this, n = that.statusBarHeight + that.titleBarHeight; //状态栏高度+导航栏高度
	        return Object.assign({}, {
	            top: n + 'px',
	        })
	    }
	}
}
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
uniapp可以通过以下方式获取状态栏高度: 1. 在页面的代码中使用uni.getSystemInfo()方法获取设备参数,其中包括状态栏高度。代码如下: uni.getSystemInfo({ success: (e) => { let statusBar = e.statusBarHeight; // 其他操作 } }) 2. 在页面的mounted()方法中使用uni.getSystemInfo()方法获取系统信息,其中包括状态栏高度。代码如下: mounted() { uni.getSystemInfo({ success: (res) => { let statusBarHeight = res.statusBarHeight; // 其他操作 }, fail(err) { console.log(err); } }) } 总结:通过使用uni.getSystemInfo()方法可以获取状态栏高度。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [uniapp 获取设备顶部导航栏,状态栏高度](https://blog.csdn.net/weixin_44510655/article/details/127131947)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [uniapp 小程序自定义导航栏计算状态栏(顶部)与导航栏(胶囊)高度](https://blog.csdn.net/qq_52912134/article/details/125676636)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [小程序自定义导航栏,兼容适配所有机型(附完整案例)](https://download.csdn.net/download/weixin_38673812/16208081)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Web项目开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值