HarmonyOS用navigation替换router后,横屏的题目视频页面不能占满全屏

切换横屏的代码是 :

private changeOrientation(isLandscape: boolean) { 
  let context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext 
  window.getLastWindow(context).then((lastWindow) => { 
    lastWindow.setPreferredOrientation(isLandscape ? window.Orientation.LANDSCAPE : window.Orientation.PORTRAIT) 
  }) 
  this.layerUIState.isLandscape = isLandscape 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

隐藏statusBar的代码是:

private hideStatusBar() { 
  let windowStage: window.WindowStage = AppStorage.get(AppStorageKey.windowStage) as window.WindowStage 
  let mainWin: window.Window = windowStage.getMainWindowSync() 
  mainWin.setWindowLayoutFullScreen(true) 
  mainWin.setSpecificSystemBarEnabled('status', false) 
    .catch((err: BusinessError) => { 
      console.error(err.message) 
    }) 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

用router跳转时,在aboutToAppear中调用changeOrientation、hideStatusBar,将视频设置为横屏、全屏,更换为navigation后,在onShown中调用changeOrientation、hideStatusBar,不能占满全屏,屏幕有部分是白的。

HarmonyOS
2024-08-28 18:11:24
465浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zxjiu

可以隐藏横屏状态下的导航栏.hideNavBar(true)或者设置为单栏模式.mode(NavigationMode.Stack)。

分享
微博
QQ
微信
回复
2024-08-28 20:16:49
相关问题
Web如何实现全屏
270浏览 • 0回复 待解决
HarmonyOS webView视频展示
898浏览 • 1回复 待解决
HarmonyOS Navigationrouter怎么
1039浏览 • 1回复 待解决
HarmonyOS 布局问题
1340浏览 • 1回复 待解决
路由导航router还是navigation
368浏览 • 1回复 待解决
HarmonyOS Canvas定位问题
628浏览 • 1回复 待解决