暨南数码
26-09-04 16:13 微博认证:数码博主 超话粉丝大咖(数码超话)

【涉及应用适配:华为鸿蒙 HarmonyOS 7 系统沉浸光感新增生效约束】

华为开发者官网 OS 平台行为变更说明今日迎来更新,宣布沉浸光感新增生效约束。针对此次变更,华为官方也给出了原因和影响:

变更原因:为确保性能和功耗体验最优,规范沉浸光感组件使用,沉浸光感对部分组件新增生效范围的约束。

变更影响:此变更涉及应用适配(此变更涉及的接口为 26.0.0 Beta 版本新增接口,因此变更仅在应用的 targetSdkVersion 设置为大于等于 26.0.0 时生效)。

附变更前后区别如下:

变更前:针对支持开启沉浸光感的所有组件,沉浸光感开启后,沉浸光感效果生效。

变更后:

弹窗类组件(AlertDialog、ActionSheet、CustomDialog、CalendarPickerDialog、DatePickerDialog、TimePickerDialog、TextPickerDialog、SelectionMenu、AlphabetIndexer 弹窗、Text 设置 copyOption 后长按或双击触发的文本菜单)和弹窗类接口(PromptAction、ArkUI_NativeDialog、@ohos.promptAction (弹窗)、Popup 控制、Tips 控制、菜单控制、半模态转场)以及按钮与选择类组件(Slider、Toggle、Select)仍可在页面内全部区域生效,与变更前无变化。

其他组件仅在 Navigation / NavDestination 标题栏或横向 Tab 中 barPosition 为 BarPosition.End 的底部 TabBar 中生效。在其他区域中设置沉浸光感效果不生效。

变更前,Column 组件通过 systemMaterial 设置了沉浸光感,沉浸光感效果生效。示例图片如下:

变更后,Column 组件通过 systemMaterial 设置了沉浸光感,由于不处于生效范围内,沉浸光感效果不生效。示例图片如下:

变更的接口 / 组件除以下清单以外的所有 ArkUI 组件:

弹窗类组件(AlertDialog、ActionSheet、CustomDialog、CalendarPickerDialog、DatePickerDialog、TimePickerDialog、TextPickerDialog、SelectionMenu、AlphabetIndexer 弹窗、Text 设置 copyOption 后长按或双击触发的文本菜单)。

弹窗类接口(PromptAction、ArkUI_NativeDialog、@ohos.promptAction (弹窗)、Popup 控制、Tips 控制、菜单控制、半模态转场)。

按钮与选择类组件(Slider、Toggle、Select)。

华为官方表示,变更后,如果组件需要沉浸光感效果,需要将该组件放置于 Navigation / NavDestination 标题栏或 Tabs 的底部 TabBar。

发布于 广东