l***@163.com
l***@163.com
  • 发布:2019-04-04 11:42
  • 更新:2019-12-06 14:32
  • 阅读:6108

解决: IOS横竖屏切换问题,按锁屏按键后,从横屏无法返回竖屏的bug,screen.lockOrientation("portrait"); 这个方法失效。

分类:MUI

步骤:
1、app是竖屏的,a页面要显示为横屏。
2、在a页面按锁屏键后,再把app打开,手动切换为横屏,这种情况下 window.plus.screen.lockOrientation("portrait"); 这个方法失效。

解决方案。
在a页面监听app进入后台调用一次竖屏方法如下:

window.plus.screen.lockOrientation("portrait");  

在app回到前台运行的时候再调用一次横屏方法如下:

window.plus.screen.lockOrientation("landscape-primary");  

整体代码如下:

document.addEventListener("pause", function () {  
            // console.log("应用从前台切换到后台");  
            if(mui.os.ios)window.plus.screen.lockOrientation("portrait");  
        }, false);  
        document.addEventListener("resume", function () {  
            // console.log("应用从后台切换到前台");  
            if(mui.os.ios)window.plus && window.plus.screen.lockOrientation("landscape-primary");  
        }, false);  
        document.addEventListener("background", function () {  
            // console.log("应用到后台");  
            if(mui.os.ios)window.plus.screen.lockOrientation("portrait");  
        }, false);  
        document.addEventListener("foreground", function () {  
            // console.log("程序切换前台运行");  
            if(mui.os.ios)window.plus && window.plus.screen.lockOrientation("landscape-primary");  
        }, false);  
0 关注 分享

要回复文章请先登录注册

rollsjun

rollsjun

回复 rollsjun :
同问,app内跑这个就报错的,貌似只有h5可以
2019-12-06 14:32
rollsjun

rollsjun

app不是没有document的嘛,有点糊涂了
2019-09-20 23:48