HarmonyOS 设置沉浸式后在任务列表界面,应用的顶部显示白色

设置沉浸式后在任务列表界面,应用的顶部显示白色,如何让应用在任务列表时顶部依然是设置的颜色?

HarmonyOS
2024-12-25 12:57:19
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

只需要在页面容器加上.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])即可,请参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-expand-safe-area-V5#expandsafearea

参考示例:

import { mStatusBarManagerInstance } from '../util/StatusBarManager';
import { router, window } from '@kit.ArkUI';

@Entry
@Component
struct Index {
  @State message: string = 'Hello World';
  @State statusBarHeight: number = 0;

  aboutToAppear(): void {

  }

  enabledImmersive: boolean = false;
  @State name: string = '开启沉浸式'

  build() {
    RelativeContainer() {
      Text(this.message)
        .id('HelloWorld')
        .fontSize(50)
        .fontWeight(FontWeight.Bold)
        .alignRules({
          center: { anchor: '__container__', align: VerticalAlign.Center },
          middle: { anchor: '__container__', align: HorizontalAlign.Center }
        })
        .onClick(() => {
          router.pushUrl({
            url: 'pages/DetailPage'
          })
        })
      Button(this.name).onClick((event) => {
        this.enabledImmersive = !this.enabledImmersive;

        if (this.enabledImmersive) {

        } else {

        }
      }).alignRules({
        center: { anchor: 'HelloWorld', align: VerticalAlign.Bottom },
        middle: { anchor: '__container__', align: HorizontalAlign.Center }
      }).margin({ top: 50 })
    }
    .backgroundColor(0x18cbbb)
    .height('100%')
    .width('100%')
    .margin({ top: this.statusBarHeight })

    .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])
  }
}
分享
微博
QQ
微信
回复
2024-12-25 15:37:00
相关问题
沉浸登录界面如何实现
562浏览 • 1回复 待解决
HarmonyOS 关于窗口沉浸设置方式
275浏览 • 1回复 待解决
如何设置沉浸状态栏
3005浏览 • 1回复 待解决
如何设置沉浸窗口,你会吗?
2398浏览 • 1回复 待解决
HarmonyOS 沉浸方案
469浏览 • 1回复 待解决
HarmonyOS 沉浸适配文档
260浏览 • 1回复 待解决