From a2758333ccc33be744225174ca30239341da0f4c Mon Sep 17 00:00:00 2001 From: lanterngamescn Date: Sat, 27 Jun 2026 01:46:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A8=E5=B1=8F=E6=B2=89=E6=B5=B8=EF=BC=9A?= =?UTF-8?q?=E5=90=8C=E6=97=B6=E9=9A=90=E8=97=8F=E9=A1=B6=E9=83=A8=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E6=A0=8F=E4=B8=8E=E5=BA=95=E9=83=A8=E6=89=8B=E5=8A=BF?= =?UTF-8?q?=E6=9D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 横屏游戏外壳下顶部状态栏与底部导航条都会遮挡/拦截 H5 内容点击。 setWindowSystemBarEnable 入参由 ['status'] 改为 [],两个系统栏均隐藏, 内容延伸至屏幕上下边缘。 Co-Authored-By: Claude Opus 4.8 (1M context) --- .../src/main/ets/entryability/EntryAbility.ets | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/entry/src/main/ets/entryability/EntryAbility.ets b/entry/src/main/ets/entryability/EntryAbility.ets index 2bfa6ed..351c1b1 100644 --- a/entry/src/main/ets/entryability/EntryAbility.ets +++ b/entry/src/main/ets/entryability/EntryAbility.ets @@ -37,9 +37,8 @@ export default class EntryAbility extends UIAbility { // Main window is created, set main page for this ability hilog.info(DOMAIN, 'testTag', '%{public}s', 'Ability onWindowStageCreate'); - // 隐藏底部系统手势条(导航条):横屏游戏外壳下其会遮挡并拦截 H5 底部点击。 - // 保留顶部状态栏,避免给 H5 顶部内容引入新的避让遮挡。 - this.hideNavigationBar(windowStage); + // 全屏沉浸:隐藏顶部状态栏 + 底部导航条(手势条),二者均会遮挡/拦截 H5 内容点击。 + this.hideSystemBars(windowStage); windowStage.loadContent('pages/Index', (err) => { if (err.code) { @@ -51,18 +50,18 @@ export default class EntryAbility extends UIAbility { } /** - * 隐藏底部导航条(手势指示条),回收其占用空间给 H5 内容。 - * setWindowSystemBarEnable 的入参是"需要显示"的系统栏集合:仅传 'status' - * → 顶部状态栏保留、底部导航条隐藏。隐藏后避让区更新,内容自动延伸到屏幕底部。 + * 全屏沉浸:隐藏顶部状态栏与底部导航条(手势条),把整屏让给 H5 内容。 + * setWindowSystemBarEnable 的入参是"需要显示"的系统栏集合:传空数组 [] + * → 状态栏与导航条均隐藏。隐藏后避让区更新,内容自动延伸到屏幕上下边缘。 */ - private hideNavigationBar(windowStage: window.WindowStage): void { + private hideSystemBars(windowStage: window.WindowStage): void { try { const mainWin: window.Window = windowStage.getMainWindowSync(); - mainWin.setWindowSystemBarEnable(['status']).catch((e: BusinessError) => { + mainWin.setWindowSystemBarEnable([]).catch((e: BusinessError) => { hilog.error(DOMAIN, 'testTag', 'setWindowSystemBarEnable failed: %{public}s', JSON.stringify(e)); }); } catch (e) { - hilog.error(DOMAIN, 'testTag', 'hideNavigationBar threw: %{public}s', JSON.stringify(e)); + hilog.error(DOMAIN, 'testTag', 'hideSystemBars threw: %{public}s', JSON.stringify(e)); } }