harmonyOS开发技巧(二)——沉浸式以及状态栏高
2023-12-13 04:21:25
1. 设置沉浸式:win.setWindowLayoutFullScreen(true);
2. 获取状态栏的高:win.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM)以及win.on('avoidAreaChange', (data) => {})。
import UIAbility from '@ohos.app.ability.UIAbility';
import window from '@ohos.window';
import { logger } from '@ohos/commonLib';
const TAG: string = 'EntryAbility';
export default class EntryAbility extends UIAbility {
onCreate(want, launchParam) {
logger.info(TAG, 'onCreate');
}
onDestroy() {
logger.info(TAG, 'onDestroy');
}
onWindowStageCreate(windowStage: window.WindowStage) {
windowStage.loadContent('pages/StartPage', (err, data) => {
if (err.code) {
logger.info(TAG, 'loadContent err=', JSON.stringify(err) ?? '');
return;
}
logger.info(TAG, 'loadContent success=', JSON.stringify(data) ?? '');
});
}
private setWindow(windowStage: window.WindowStage) {
windowStage.getMainWindow().then((win: window.Window) => {
win.setWindowLayoutFullScreen(true);
try {
const avoidArea = win.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM);
if (avoidArea) {
// AppStorage.SetOrCreate('statusBarHeight', avoidArea?.topRect?.height);
}
win.on('avoidAreaChange', (data) => {
// AppStorage.SetOrCreate('statusBarHeight', data?.area?.topRect?.height);
});
} catch (err) {
}
})
}
}
文章来源:https://blog.csdn.net/qq_42231156/article/details/134889824
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!