鸿蒙设置沉浸式状态栏、全屏、获取导航栏高度

场景1.在EntryAbility.ts中设置

  onWindowStageCreate(windowStage: window.WindowStage) {


    let windowClass: window.Window = null;
    windowStage.getMainWindow((err, data) => {
      // 1.获取应用主窗口
      windowClass = data;
      // 2.设置导航栏、状态栏不显示。
      windowClass.setWindowSystemBarEnable([], (err) => {

      });
      // 3.设置全屏
      windowClass.setWindowLayoutFullScreen(true).then(() => {

      })
      // 4.获取底部导航栏高度,此时的高度单位是px
      let navigationHeight = windowClass.getWindowAvoidArea(window.AvoidAreaType.TYPE_SYSTEM).bottomRect.height
      PersistentStorage.PersistProps([{
        key: "navigationHeight", defaultValue: navigationHeight
      }])
      windowStage.loadContent('pages/Index', (err, data) => {

      });
    })

  }

此时APP顶部状态栏和底部导航栏都将被隐藏,并且页面全面屏显示

场景2. 如果想要在其他页面继续显示状态栏和底部导航栏又该怎么做呢?

第一步:先获取context属性

导入依赖

import common from '@ohos.app.ability.common'
import window from '@ohos.window'

声明context属性

private context = getContext(this) as common.UIAbilityContext
aboutToAppear()方法中
aboutToAppear() {
  window.getLastWindow(this.context).then((windowClass) => {
    windowClass.setWindowSystemBarEnable(["status", "navigation"]).then(() => {
    })
  })
}

"status"和"navigation"就对象状态栏和导航栏。想显示哪个就写哪个

如果想获取导航栏的高度为vp,那么通过下面方法获取

px2vp(this.navigationHeight)

注意:目前我只在页面中能获取到px2vp这个方法,在ability中我没有获取到。如果有更好的方法麻烦告诉我一下

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-03 13:46:02       91 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-03 13:46:02       97 阅读
  3. 在Django里面运行非项目文件

    2024-02-03 13:46:02       78 阅读
  4. Python语言-面向对象

    2024-02-03 13:46:02       88 阅读

热门阅读

  1. json文件缺少的语言key的检测

    2024-02-03 13:46:02       52 阅读
  2. 【Python】requests库的介绍及用法

    2024-02-03 13:46:02       42 阅读
  3. python--第三方包的使用

    2024-02-03 13:46:02       48 阅读
  4. Vue3 vant4 底部tabbar图标如何修改为自定义图片

    2024-02-03 13:46:02       51 阅读
  5. ChatGPT等大模型AI能干什么?

    2024-02-03 13:46:02       45 阅读
  6. 力扣0120——三角形最小路径和

    2024-02-03 13:46:02       55 阅读