HarmonyOS 横屏后布局问题

使用window.setPreferredOrientation设置强制横屏后,Navigation宽度正常,但其中内容组件的宽度不对

HarmonyOS
2024-12-18 14:53:07
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit

可以使用 onPageShow onPageHide来设置页面级别的横屏

onPageShow(): void {
  // window.getLastWindow(getContext(this), (err, win) => {
  // win.setPreferredOrientation(window.Orientation.LANDSCAPE_INVERTED)
  // })
}

onPageHide(): void {
  window.getLastWindow(getContext(this), (err, win) => {
  win.setPreferredOrientation(window.Orientation.PORTRAIT)
})

或者在上一个界面跳转第二个界面的时候调用横屏,demo以下

Button('界面跳转')
  .onClick(()=>{
    window.getLastWindow(getContext(this), (err, win) => {
      win.setPreferredOrientation(window.Orientation.LANDSCAPE_INVERTED)
    })

    router.pushUrl({
      url:"pages/Index2"
    })
  })

setPreferredOrientation的使用请详细参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-window-V5#setpreferredorientation9

分享
微博
QQ
微信
回复
2024-12-18 16:35:25
相关问题
HarmonyOS Canvas定位问题
210浏览 • 1回复 待解决
HarmonyOS 播放问题
942浏览 • 1回复 待解决
HarmonyOS 相机旋转拍照问题
692浏览 • 1回复 待解决
HarmonyOS video如何播放?
724浏览 • 1回复 待解决
HarmonyOS webView视频展示
450浏览 • 1回复 待解决
HarmonyOS 如何让app支持
540浏览 • 1回复 待解决
openharmony jsFA 如何显示?
7685浏览 • 1回复 待解决
如何获取当前是还是竖啊?
5369浏览 • 1回复 待解决
HarmonyOS 怎么设置某个 page 展示
326浏览 • 1回复 待解决
应用如何适配华为悬浮窗?
3094浏览 • 1回复 待解决
如何设置屏幕方向为
1996浏览 • 1回复 待解决