uniapp 解决切换横竖屏后内容错乱的问题

前言:最近有个需要横屏签名的需求,看了很多博客写的都是调用plus的方法,但是在进入横屏签名页面返回后,再跳转下一级页面会出现内容错乱的问题。

一、h5切换横竖屏文档

plus.screen.lockOrientation(‘orientation’);: ( String ) 必选 要锁定的屏幕方向值
plus.screen.unlockOrientation(); //解除锁定屏幕方向
锁定屏幕方向可取以下值:

"portrait-primary": 竖屏正方向;
"portrait-secondary": 竖屏反方向,屏幕正方向按顺时针旋转180°;
"landscape-primary": 横屏正方向,屏幕正方向按顺时针旋转90°;
"landscape-secondary": 横屏方向,屏幕正方向按顺时针旋转270°;
"portrait": 竖屏正方向或反方向,根据设备重力感应器自动调整;
"landscape": 横屏正方向或反方向,根据设备重力感应器自动调整;

二、实现横竖屏
1、进入签名页面,实现横屏:
onLoad(){

	#ifdef APP-PLUS
	plus.screen.unlockOrientation(); //解除锁定屏幕方向
	plus.screen.lockOrientation('landscape-primary');
	#endif
	
}
2、签名完成后返回页面,恢复竖屏:
onShow() {

	#ifdef APP-PLUS
	plus.screen.unlockOrientation();//解除锁定屏幕方向
	plus.screen.lockOrientation('portrait-primary');
	#endif	
		
}
三、解决横竖屏后内容错乱问题

在进入横屏页面后,写个定时器 1.2s之后再执行横屏操作。

onLoad() {
	#ifdef APP-PLUS
		uni.showLoading({
			title:"加载中..."
		})
		setTimeout(()=>{
			plus.screen.unlockOrientation();
			plus.screen.lockOrientation('landscape-primary');
			uni.hideLoading();
		},1200)
	#endif
},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值