本文主要是介绍HarmonyOS ArkTS 横竖屏设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、全局横竖屏设置,在module.json5下,对当前UIAbility配置orientation,如下:
{"module": {"name": "entry","type": "entry",..."abilities": [{"name": "EntryAbility",..."orientation": "auto_rotation",...}]}
}
orientation属性列表如下:
orientation属性 | 描述 |
unspecified | 未指定方向,由系统自动判断显示方向 |
landscape | 横屏 |
portrait | 竖屏 |
landscape_inverted | 反向横屏 |
portrait_inverted | 反向竖屏 |
auto_rotation | 随传感器旋转 |
auto_rotation_landscape | 传感器横屏旋转,包括横屏和反向横屏 |
auto_rotation_portrait | 传感器竖屏旋转,包括竖屏和反向竖屏 |
auto_rotation_restricted | 传感器开关打开,方向可随传感器旋转 |
auto_rotation_landscape_restricted | 传感器开关打开,方向可随传感器旋转为横屏, 包括横屏和反向横屏 |
auto_rotation_portrait_restricted | 传感器开关打开,方向随可传感器旋转为竖屏, 包括横屏和反向横屏 |
locked | 传感器开关关闭,方向锁定 |
二、对单个Entry,自定义页面设置横竖屏
在页面内通过 Window 对象的 setPreferredOrientation() 方法实现横竖屏切换,如下:
@Component
@Entry
struct DemoPage {...aboutToAppear(): void {let context = getContext(this) as common.UIAbilityContextwindow.getLastWindow(context).then((lastWindow)=> {lastWindow.setPreferredOrientation(window.Orientation.LANDSCAPE)})}
}
这篇关于HarmonyOS ArkTS 横竖屏设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!