uniapp如何锁定竖屏

在uniapp开发中,如何锁定应用为竖屏显示?我在manifest.json里配置了"orientation": [“portrait-primary”],但部分安卓设备仍然会横屏。有没有彻底锁定竖屏的方案?需要额外代码或插件吗?

2 回复

pages.json中,找到对应页面或全局设置,添加"pageOrientation": "portrait"即可锁定竖屏。


在 UniApp 中锁定竖屏,可以通过以下方法实现:

1. 全局配置(推荐)

pages.json 文件中配置全局屏幕方向为竖屏:

{
  "globalStyle": {
    "pageOrientation": "portrait"
  }
}

这样所有页面都会默认锁定为竖屏。

2. 单页面配置

如果只需要特定页面锁定竖屏,在 pages.json 的对应页面配置中添加:

{
  "path": "pages/your-page/your-page",
  "style": {
    "pageOrientation": "portrait"
  }
}

3. 动态设置(仅部分平台支持)

使用 uni.setScreenOrientation API 动态调整(注意兼容性):

// 设置为竖屏
uni.setScreenOrientation({
  orientation: 'portrait'
});

注意事项:

  • 以上方法在 App 和部分小程序平台有效,H5 端依赖浏览器设置。
  • 如果需要在 App 端更灵活控制,可考虑使用原生插件。

推荐优先使用全局或页面配置,简单且兼容性较好。

回到顶部