HarmonyOS 鸿蒙Next:如果实现APP切到后台以及在后台查看时蒙层遮罩效果

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

HarmonyOS 鸿蒙Next:如果实现APP切到后台以及在后台查看时蒙层遮罩效果

金融类APP,行业要求APP在进入后台后,要增加蒙层遮罩,处于后台时,不可以展示出来app具体内容。切换回前台时,再去除蒙层展示真实内容。 参考附件中iOS端的效果。 之前在API11 按如下实现,监听windowEvent可以达到效果,升级API12后,该方法失效了。  windowClass.on(‘windowEvent’, (data) => { if (data.toString() == ‘4’) { AppStorage.setOrCreate(‘appVisible’, false) } else if(data.toString() == ‘1’) { AppStorage.setOrCreate(‘appVisible’, true) } })

2 回复

在EntryAbility中onWindowStageCreate方法中添加AppStorage.setOrCreate('windowStage',windowStage);
page重demo如下:


import { window } from '@kit.ArkUI';

@Entry @Component struct Index { @State message: string = ‘Hello World’; @State flag: boolean = false

onPageShow(): void { let windowStage = AppStorage.get(“windowStage”) as window.WindowStage; windowStage.on(“windowStageEvent”, (data) => { if (data === window.WindowStageEventType.PAUSED) { this.flag = true } else { this.flag = false } }) }

build() { Row() { Column() { Text(this.message) .fontSize(50) .fontWeight(FontWeight.Bold) } .width(‘100%’) } .height(‘100%’) .foregroundBlurStyle(this.flag ? BlurStyle.Thin : BlurStyle.NONE, { colorMode: ThemeColorMode.LIGHT, adaptiveColor: AdaptiveColor.DEFAULT }) } }

HarmonyOS 鸿蒙Next系统中,实现APP切到后台以及在后台查看时蒙层遮罩效果,可以通过以下方式实现:

首先,要实现APP切到后台,用户只需在HarmonyOS设备上正常操作,如点击返回键或home键,APP便会自动进入后台运行。

其次,关于在后台查看时添加蒙层遮罩效果,开发者可以利用HarmonyOS提供的UI框架和组件来实现。具体来说,可以使用自定义弹窗(customDialog)并设置其customStyletrue,然后通过配置属性动画来实现弹窗的打开和关闭效果。此外,也可以利用ArkTS的模糊组件(Blur Effect)来创建遮罩层,通过调整模糊样式和颜色等属性,达到所需的遮罩效果。

请注意,实现这一功能需要开发者具备一定的编程能力和对HarmonyOS开发框架的熟悉度。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部