HarmonyOS 鸿蒙Next @CustomDialog自定义的组件底部安全区域怎么忽略?

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next @CustomDialog自定义的组件底部安全区域怎么忽略?

白色部分是CustomDialog,红色是下面的页面。expandSafeArea设置了了无效

.expandSafeArea([SafeAreaType.SYSTEM], [SafeAreaEdge.BOTTOM])IMG_8053.png

5 回复
楼主后续有解决方式吗,同问

我发现:在扩展了自定义弹窗安全区域后,必须在创建CustomDialogController时设置alignment(任意值),才会真正实现全屏,从而覆盖导航条区域。

cke_2145.pngcke_1069.png

设置了。我看你截图,底部安全域颜色要比上面淡一点,应该没覆盖底部

把window设置为全屏就好了:window.setWindowLayoutFullScreen(true)

在HarmonyOS鸿蒙Next中,若想要忽略@CustomDialog自定义组件的底部安全区域,可以尝试以下方法:

首先,确保在创建CustomDialogController时,设置了alignment属性(任意值),这有助于实现全屏效果,从而可能覆盖到底部安全区域。但请注意,这并非直接忽略安全区域,而是通过全屏显示来覆盖。

其次,可以尝试使用expandSafeArea方法,并传入相应的SafeAreaType和SafeAreaEdge参数,以扩展布局到底部安全区域内。然而,根据一些开发者的经验,此方法在某些情况下可能无效,特别是在底部导航栏存在时。

如果上述方法均无效,且你的需求是确保自定义Dialog能够完全覆盖底部安全区域(例如,在不使用底部导航栏的设备上),可以考虑在Dialog的最外层容器上设置适当的margin或padding,以手动调整布局位置。

最后,由于不同设备和系统版本可能存在差异,因此建议在实际开发中进行充分测试。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部