如何获取状态栏和导航栏高度

如何获取状态栏和导航栏高度

HarmonyOS
2024-01-31 15:47:46
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
LoveBank

获取系统状态栏,导航栏等避让区域,使用系统提供的getWindowAvoidArea方法可获取。

参考代码如下:

// MainAbility.ts 
import window from '@ohos.window'; 
import common from '@ohos.app.ability.common'; 
import UIAbility from '@ohos.app.ability.UIAbility'; 
/** 
 * 获取系统状态栏,导航栏高度 
 * @param context 
 * @returns  
 */ 
async function getWindowAvoidArea(context: common.UIAbilityContext): Promise<window.AvoidArea> { 
  try { 
    const mainWindow = await window.getLastWindow(context); 
    const avoidAreaType = window.AvoidAreaType.TYPE_SYSTEM; // 系统默认区域,包括状态栏,导航栏 
    const avoidArea = mainWindow.getWindowAvoidArea(avoidAreaType); 
    return avoidArea 
  } catch (e) { 
    console.log('getWindowAvoidArea fail'); 
    return null 
  } 
} 
 
export default class MainAbility extends UIAbility { 
  // do something 
  async onWindowStageCreate(windowStage: window.WindowStage) { 
    getWindowAvoidArea(this.context); 
    windowStage.loadContent('pages/index') 
  } 
  // do something 
}

参考链接

getWindowAvoidArea

分享
微博
QQ
微信
回复
2024-02-01 18:05:01
相关问题
鸿蒙如何获取导航状态栏高度
9310浏览 • 1回复 待解决
状态栏高度怎么获取
7859浏览 • 3回复 待解决
如何设置状态栏导航的颜色
446浏览 • 1回复 待解决
获取状态栏高度等方法
6302浏览 • 1回复 待解决
有谁知道如何获取状态栏高度
294浏览 • 1回复 待解决
如何设置沉浸式状态栏
201浏览 • 1回复 待解决
ets开发如何设置隐藏状态栏
1383浏览 • 1回复 待解决
Dialog如何覆盖状态栏全屏显示
8208浏览 • 1回复 待解决
元服务顶部状态栏怎么设置标题
28浏览 • 0回复 待解决
应用如何设置隐藏顶部的状态栏
292浏览 • 1回复 待解决
Navigation如何隐藏导航
308浏览 • 1回复 待解决
鸿蒙怎么 修改状态栏字体颜色
9922浏览 • 1回复 待解决
Js UI 如何设置状态栏背景是透明的?
1524浏览 • 1回复 待解决