当前位置:首页 > uni-app

uniapp横屏app

2026-02-06 14:34:19uni-app

实现UniApp横屏应用的方法

配置manifest.json文件
在项目根目录的manifest.json文件中,找到"app-plus"节点,添加屏幕方向设置。示例代码:

"app-plus": {
    "screenOrientation": [
        "landscape-primary",
        "landscape-secondary"
    ]
}

landscape-primary表示默认横屏,landscape-secondary表示反向横屏。

页面级横屏设置
若需单个页面强制横屏,在页面的onLoad生命周期调用API:

onLoad() {
    plus.screen.lockOrientation("landscape-primary");
}

退出页面时恢复竖屏:

uniapp横屏app

onUnload() {
    plus.screen.lockOrientation("portrait-primary");
}

CSS适配横屏布局
通过媒体查询或动态计算窗口大小调整布局:

@media screen and (orientation: landscape) {
    .container {
        flex-direction: row;
    }
}

或使用JavaScript动态获取屏幕宽高:

const { windowWidth, windowHeight } = uni.getSystemInfoSync();

注意事项

uniapp横屏app

  • 部分组件(如<video>)可能自带横屏逻辑,需测试兼容性。
  • 微信小程序平台需单独在page.json中配置"pageOrientation": "auto"
  • Android原生端可能需在AndroidManifest.xml中设置screenOrientation属性。

多平台兼容性处理

微信小程序
在对应页面的page.json中配置:

{
    "pageOrientation": "landscape"
}

H5端适配
通过CSS媒体查询或监听orientationchange事件:

window.addEventListener("orientationchange", () => {
    console.log(window.orientation);
});

原生端补充配置

  • Android:修改nativeplugins/AndroidManifest.xml,在<activity>标签内添加:
      android:screenOrientation="sensorLandscape"
  • iOS:在Xcode中勾选Landscape LeftLandscape Right方向。

标签: uniapp横屏
分享给朋友:

相关文章

uniapp打包

uniapp打包

uniapp打包步骤 H5平台打包 在项目根目录运行以下命令生成H5资源文件: npm run build:h5 打包完成后,文件默认输出到/dist/build/h5目录,可直接部署到Web服务器…

uniapp全局校验

uniapp全局校验

uniapp全局校验的实现方法 在uniapp中实现全局校验可以通过多种方式,主要包括拦截器、全局混入和自定义指令等方法。 使用请求拦截器进行校验 在main.js中配置请求拦截器,对所有请求进行统…

uniapp招聘信息

uniapp招聘信息

uniapp招聘现状 目前市场上对uniapp开发者的需求主要集中在移动端跨平台开发领域,许多企业希望招聘能够同时开发iOS和Android应用的全栈人才。招聘岗位通常要求掌握Vue.js框架、熟悉小…

uniapp混合现实

uniapp混合现实

uniapp与混合现实(MR)的结合方式 uniapp作为跨平台开发框架,支持通过插件或原生模块集成混合现实(MR)功能。以下是实现uniapp与MR技术结合的常见方法: 使用WebXR API 通…

uniapp多行注释

uniapp多行注释

uniapp多行注释方法 在UniApp中,多行注释的语法与JavaScript一致,可以使用以下两种方式实现多行注释。 方法一:使用/* */符号 通过/*开始注释,*/结束注释,中间的内容会被视…

uniapp推荐系统

uniapp推荐系统

基于UniApp的推荐系统实现方案 UniApp作为跨平台开发框架,可通过以下方式实现推荐系统功能: 数据驱动推荐算法 通过用户行为数据(浏览、收藏、购买等)构建用户画像,采用协同过滤算法或内容相似…