uni-app 本地调试时hbx经常出现竖屏锁定失效导致界面显示错乱

uni-app 本地调试时hbx经常出现竖屏锁定失效导致界面显示错乱

开发环境 版本号 项目创建方式
Windows win10-ltsc HBuilderX
Android Android 10 -
手机厂商 手机机型 -
华为 p30 -

操作步骤:

已经在App.vue中通过 plus.screen.lockOrientation(‘portrait-primary’); 设置了竖屏显示,但是在hbx调试的时候,如果手机是横着放的,且开启了设置里面的自动旋转的情况下,还是会经常出现无法锁定竖屏的情况,导致APP界面显示错乱,表现为:APP的字体变得非常大,但是显示样式还是按照竖屏显示的,所以屏幕上只能看到正常情况下一半的界面。就像是本来固定了屏幕宽度是700rpx的,但是突然页面宽度变成了1400rpx了,所以导致无法显示完整

预期结果:

已经在App.vue中通过 plus.screen.lockOrientation(‘portrait-primary’); 设置了竖屏显示,但是在hbx调试的时候,如果手机是横着放的,且开启了设置里面的自动旋转的情况下,还是会经常出现无法锁定竖屏的情况,导致APP界面显示错乱,表现为:APP的字体变得非常大,但是显示样式还是按照竖屏显示的,所以屏幕上只能看到正常情况下一半的界面。就像是本来固定了屏幕宽度是700rpx的,但是突然页面宽度变成了1400rpx了,所以导致无法显示完整

实际结果:

已经在App.vue中通过 plus.screen.lockOrientation(‘portrait-primary’); 设置了竖屏显示,但是在hbx调试的时候,如果手机是横着放的,且开启了设置里面的自动旋转的情况下,还是会经常出现无法锁定竖屏的情况,导致APP界面显示错乱,表现为:APP的字体变得非常大,但是显示样式还是按照竖屏显示的,所以屏幕上只能看到正常情况下一半的界面。就像是本来固定了屏幕宽度是700rpx的,但是突然页面宽度变成了1400rpx了,所以导致无法显示完整

bug描述:

已经在App.vue中通过 plus.screen.lockOrientation(‘portrait-primary’); 设置了竖屏显示,但是在hbx调试的时候,如果手机是横着放的,且开启了设置里面的自动旋转的情况下,还是会经常出现无法锁定竖屏的情况,导致APP界面显示错乱,表现为:APP的字体变得非常大,但是显示样式还是按照竖屏显示的,所以屏幕上只能看到正常情况下一半的界面。就像是本来固定了屏幕宽度是700rpx的,但是突然页面宽度变成了1400rpx了,所以导致无法显示完整


更多关于uni-app 本地调试时hbx经常出现竖屏锁定失效导致界面显示错乱的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

manifest里设置竖屏。app.vue生效太慢

更多关于uni-app 本地调试时hbx经常出现竖屏锁定失效导致界面显示错乱的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是一个已知的HBuilderX调试模式下的屏幕方向锁定问题。调试模式下,plus API的屏幕方向控制有时会失效,特别是在手机开启自动旋转的情况下。

建议尝试以下解决方案:

  1. 在manifest.json中配置屏幕方向:
{
  "app-plus": {
    "screenOrientation": ["portrait-primary"]
  }
}
  1. 在App.vue的onLaunch中增加延迟执行:
setTimeout(() => {
  plus.screen.lockOrientation('portrait-primary');
}, 500);
回到顶部