首先说一下,现在iPhone有刘海屏的一些型号(iPhone X iPhone XR iPhone XS Max…);
通俗点说,因为微信小程序头部这玩意:如果需要和它平齐写一个头部样式的话,刘海屏会向下压一部分高度从而导致样式不平齐。所以我的解决办法是给他一个占位模块,将它压下的高度给他顶起来。
在这里插入图片描述

	<view class="fit" v-if="fit">
			<!-- 占位兼容刘海屏 -->
		</view>

uni.getSystemInfo(OBJECT) 获取手机设备

uni.getSystemInfo({
			    success:  (res)=> {
					console.log(res.model)
			        if(res.model.indexOf('iPhone X') != -1 || res.model.indexOf("iPhone XR") != -1  || res.model.indexOf("iPhone XS Max") != -1){
						this.fit = true
					}else{
						this.fit = false;
					}
			    }
			});

变量 fit用于判断是否是刘海屏从而是否显示占位模块从而解决问题。

其中--status-bar-heightuniapp是这样说:uni-app提供了状态栏高度的css变量–status-bar-height,如果需要把状态栏的位置从前景部分让出来,可写一个占位div,高度设为css变量。

Logo

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

更多推荐