关于 uni-app 鸿蒙平台支持透明窗口页面的需求反馈
一、当前问题
我们在多个项目中,通过 pages\.json 配置透明背景实现透明弹窗页面,该方案在 APP-PLUS(安卓 /iOS)端可正常运行,但在鸿蒙平台不支持,导致原有功能失效。
现有可用配置(APP-PLUS IOS和安卓端)
{
"path": "pages/dialog/copy",
"style": {
"navigationStyle": "custom",
// #ifdef APP-PLUS
"backgroundColor": "transparent",
"backgroundColorTop": "transparent",
"backgroundColorBottom": "transparent",
// #endif
"app-plus": {
"animationType": "fade-in",
"background": "transparent",
"popGesture": "none"
}
}
}
鸿蒙平台存在的缺陷
-
不支持
pages.json中配置backgroundColor: transparent实现透明窗口; -
官方提供的鸿蒙专属 API
uni.setBackgroundColor(OBJECT)不支持设置透明值,无法替代原有方案; -
无官方等效方案,只能将所有页面弹窗改为自定义组件,改造工作量极大。
二、业务影响
-
多个存量项目大量页面使用透明页面做弹窗,无法直接兼容鸿蒙端;
-
若全部改用组件实现,需要大量修改老代码,耗时且容易产生兼容问题;
-
跨端一致性被破坏,APP 端正常运行、鸿蒙端无法使用。
三、需求建议
-
优先兼容原有配置
鸿蒙平台支持pages\.json中backgroundColor: transparent透明配置,与 APP 端保持一致,实现零成本兼容。 -
新增官方透明页面 API
参考 uni-app x 的uni.openDialogPage(options),在 uni-app 标准版鸿蒙平台提供官方透明弹窗页面方法。 -
完善现有 API
升级uni.setBackgroundColor,支持透明色值,补全基础能力。
四、核心诉求
透明窗口是弹窗类核心功能,恳请官方尽快适配鸿蒙平台透明页面能力,保持跨端统一,大幅降低老项目改造工作量。
0 个评论
要回复文章请先登录或注册