我正在使用 Qt 5.4 和 Qt Creator 3.3.2。
加载不同的图像,取决于当前的操作系统,可以用
Image {source: "logo.png" }
和以下资源
logo.png
+windows/logo.png
+android/logo.png
+ios/logo.png
如果我正确理解文档,添加
+ios/logo.png
+ios/logo@2x.png
+ios/logo@3x.png
将在 iOS 上根据设备密度选择不同的图像。
我可以使用类似的机制为不同的 Android dpi(ldpi、mdpi、hdpi、xhdpi 等)加载不同的图像吗?如果是这样,目录结构应该如何?
最佳答案
Image {source: "logo" + density + ".png" }
并且 density
可以是例如 S、M、L,并且您有 logoS.png
、logoM.png
和 logoL .png
。或者您可以使用它来指定不同的路径而不是图像名称。无论哪种方式。
您可以使用 QScreen
的 logicalDotsPerInch
属性并将其公开给 QML 以确定密度
的值。
此外,如果图像足够大,您实际上可以只运送较大的版本并根据需要缩小它。这会更容易,而且您不会受到特定尺寸的限制。
关于android - 在 Qt/QML 中,如何为不同的设备密度加载不同的图像 (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29473184/