【问题标题】:Setting content orientation changes the dimming effect when popup appears设置内容方向会改变弹出窗口出现时的变暗效果
【发布时间】:2021-09-06 09:55:12
【问题描述】:

我有一个带有弹出窗口的屏幕,当用户输入无效参数时应该显示该窗口。但是,当我将屏幕部署到嵌入式设备时,一切都以横向模式显示,截取了屏幕的一部分。为了解决这个问题,我在main.qml 中添加了一个Page 元素,并将rotation 设置为90。然后,这将作为所有屏幕的父屏幕,以便它们正确显示在所使用的设备上。但是,此修复程序不适用于任何弹出窗口。为了旋转弹出窗口,我开始在main.qml 中的ApplicationWindow 下使用contentOrientation: Qt.LandscapeOrientation 属性。这解决了弹出窗口不旋转的问题,但现在调光效果渲染不正确,仅模糊了一半的应用程序窗口。如何旋转弹出窗口并保持调光效果不变?

编辑 1:平台是 Odroid-N2,安装了 Ubuntu 的 minimal image '20190806'

【问题讨论】:

  • 您使用哪个 Qt 版本?旋转应该由 os (Android/iOS) 自动处理。无需使用强制旋转属性手动执行此操作。
  • 我使用的是 5.14.2。屏幕应该在 Odroid 设备上运行,但如果我自己不强制任何旋转,它们就会出现旋转。
  • 好的,那么您的目标平台是 Linux 设备?
  • 没错。我从here 下载了适用于 Ubuntu 的最小映像“20190806”,然后将其刻录到 EMMC 上。很抱歉错过了这个细节。让我知道我是否应该在我的问题中添加任何其他信息。

标签: qt qml popup applicationwindow


【解决方案1】:

我发现的一种解决方法是自定义调光效果以强制其旋转。

// Controls dimming effect
Overlay.modal: Rectangle {
    rotation: 90
    anchors.centerIn: popupId
    color: "#66000000" // Opacity + Color of dimming effect.
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-09
    相关资源
    最近更新 更多