HarmonyOS 关于窗口沉浸式的设置方式

app中有一个场景为:一个子页面需要根据传入的参数进行判断,动态设置该页面是否为沉浸式,

如何能实现上面描述的功能

HarmonyOS
15h前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
aquaa

可以参考以下开发指南,使用expandSafeArea属性设置,使页面内组件无视顶部状态栏和底部导航栏的占用:

.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])

开发指南:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-develop-apply-immersive-effects-V5#section89942014473

下列demo是expandSafeArea属性的动态变化demo:

// Index.ets
@Entry
@Component
struct Index{
  @State message: string = 'Hello World'
  private controller: TabsController = new TabsController()
  @State selfFadingFade: boolean = true;
  @State currentIndex: number = 0
  @State isTrue: boolean = false;

  build() {
    Column() {
      Image($r("app.media.ic_app_background"))
        .height('100%').width('100%')
        .expandSafeArea(this.isTrue? []:[SafeAreaType.SYSTEM], this.isTrue? []:[SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]) // 图片组件的绘制区域扩展至状态栏和导航条。
      // .expandSafeArea(null)

      Button("切换").onClick(()=>{
        this.isTrue = !this.isTrue
      })

    }
  }
}
分享
微博
QQ
微信
回复
13h前
相关问题
如何设置沉浸窗口,你会吗?
1971浏览 • 1回复 待解决
API9和API10实现沉浸窗口方式
411938浏览 • 1回复 待解决
HarmonyOS 关于沉浸效果开发
66浏览 • 1回复 待解决
如何设置沉浸状态栏
2629浏览 • 1回复 待解决
HarmonyOS 沉浸方案
270浏览 • 1回复 待解决
HarmonyOS 沉浸适配文档
0浏览 • 0回复 待解决
HarmonyOS List组件沉浸问题
37浏览 • 1回复 待解决
HarmonyOS 沉浸状态栏
143浏览 • 1回复 待解决