HarmonyOS 横屏后布局问题

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

HarmonyOS
2024-12-18 14:53:07
849浏览
收藏 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)
})
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

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

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

    router.pushUrl({
      url:"pages/Index2"
    })
  })
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

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定位问题
616浏览 • 1回复 待解决
HarmonyOS 播放问题
1484浏览 • 1回复 待解决
Web如何实现全屏
260浏览 • 0回复 待解决
HarmonyOS 相机旋转拍照问题
1087浏览 • 1回复 待解决
HarmonyOS webView视频展示
877浏览 • 1回复 待解决
HarmonyOS video如何播放?
1097浏览 • 1回复 待解决
HarmonyOS 查询当前状态是还是竖
1224浏览 • 1回复 待解决
HarmonyOS 如何让app支持
1100浏览 • 1回复 待解决
openharmony jsFA 如何显示?
8162浏览 • 1回复 待解决
如何设置屏幕方向为
2479浏览 • 1回复 待解决
HarmonyOS 怎么设置某个 page 展示
657浏览 • 1回复 待解决
如何获取当前是还是竖啊?
5859浏览 • 1回复 待解决