如何锁定设备竖屏,使得窗口不随屏幕旋转
2024-12-18 16:00:50
170次阅读
0个评论
采用窗口的setPreferredOrientation方法可以实现该效果,将orientation参数设置为window.Orientation.PORTRAIT时,可锁定屏幕为竖屏。参考代码如下:
import { BusinessError } from '@kit.BasicServicesKit';
import { window } from '@kit.ArkUI';
//1.获取窗口实例对象,新建窗口使用createWindow方法,获取已有的窗口使用findWindow方法
let windowClass: window.Window | undefined = undefined;
let config: window.Configuration = {
name: "alertWindow",
windowType: window.WindowType.TYPE_SYSTEM_ALERT,
ctx: this.context
};
try {
let promise = window.createWindow(config);
promise.then((data)=> {
windowClass = data;
console.info('Succeeded in creating the window. Data:' + JSON.stringify(data));
}).catch((err: BusinessError)=>{
console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
});} catch (exception) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(exception));
}
//2.窗口实例使用setPreferredOrientation方法,设置窗口的显示方向,PROTRAIT为固定竖屏,其他方向可参照参考链接
let orientation = window.Orientation.AUTO_ROTATION;
try {
let windowClass: window.Window = window.findWindow("test");
windowClass.setPreferredOrientation(orientation, (err: BusinessError) => {
const errCode: number = err.code;
if (errCode) {
console.error('Failed to set window orientation. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting window orientation.');
});
} catch (exception) {
console.error('Failed to set window orientation. Cause: ' + JSON.stringify(exception));
}
00
- 1回答
- 0粉丝
- 0关注
相关话题
- 如何获取设备屏幕横竖屏状态
- 如何设置窗口旋转
- 如何实现应用的屏幕自动旋转
- 如何实现折叠屏折叠态不适配旋转,展示态适配旋转
- HarmonyOS ArkTS中视频播放Video组件实现竖屏到横屏切换
- 如何实现防截屏功能
- 如何完成挖孔屏的适配
- OpenHarmony 如何实现防截屏功能
- List控件加载的数据如何判断是否超过一屏
- 【HarmonyOS NEXT】使用 Navigation 对折叠屏设备页面进行分栏展示,优化 UI 交互
- (八五)HarmonyOS Design 在智能穿戴设备中的实践:应对设计限制与优化小屏幕体验
- 鸿蒙Banner图一多适配不同屏幕
- 轻松上手-骨架屏后动画显示
- 46. HarmonyOS NEXT 登录模块开发教程(一):模态窗口登录概述
- 93.HarmonyOS NEXT窗口管理基础教程:深入理解WindowSizeManager