HarmonyOS NavDestination的expandSafeArea问题

NavDestination默认的.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])设置之后没有避让顶部摄像头区域,如何设置可以避让顶部摄像头区域?UIAbility配置如下:

windowClass.setWindowLayoutFullScreen(true)
// 隐藏状态栏显示
windowClass.setWindowSystemBarEnable(['navigation'])

代码如下:

build() {

  NavDestination() {

    Column() {

    }
    .width('100%')
    .height('100%')
  }
  .title('工会新闻')
  .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM])
  .onReady((context: NavDestinationContext) => {
    this.pathStack = context.pathStack
  })
  .onWillAppear(() => {
    this.getArticleCategory()
  })
}
HarmonyOS
2024-12-25 12:58:06
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

1、windowClass.setWindowLayoutFullScreen(true)与 .expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM]) 都是为了实现沉浸式,第一个是默认整个应用的沉浸式,第二个是通过拓展安全区域属性,参考API文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-develop-apply-immersive-effects-V5#section89942014473所以设置 expandSafeArea 并不会使全局沉浸式失效从而规避安全区。

2、expandSafeArea是单页面实现沉浸式,并且可以灵活设置指定组件扩展至安全区域,可以试下使用expandSafeArea按需设计沉浸式。

分享
微博
QQ
微信
回复
2024-12-25 15:30:13
相关问题
HarmonyOS NavDestinationmenu问题
46浏览 • 1回复 待解决
HarmonyOS NavDestination生命周期问题
260浏览 • 1回复 待解决
HarmonyOS navdestination页面返回按钮问题
551浏览 • 1回复 待解决
HarmonyOS expandSafeArea不生效
683浏览 • 1回复 待解决
HarmonyOS Navigation NavRouter NavDestination
309浏览 • 1回复 待解决
HarmonyOS NavDestinationtitle怎么居中
205浏览 • 1回复 待解决
HarmonyOS部分场景下expandSafeArea不生效
1296浏览 • 1回复 待解决
HarmonyOS NavDestination组件加按钮
367浏览 • 1回复 待解决
HarmonyOS 使用navDestination报类型异常
54浏览 • 1回复 待解决
HarmonyOS NavDestination和page使用区别
215浏览 • 1回复 待解决