Qt5 Android最大化应用程序

时间:2013-07-20 18:38:18

标签: android qt

使用适用于Android的Qt SDK创建默认QML应用程序时,您的应用程序始终以小窗口开始。通常showExpanded或showFullscreen有帮助,但这会导致黑屏。解决方法的唯一方法是使用固定大小的setGeometry,但这对支持各种各样的Android设备不是很有用。我某处发现有人提到QML在启动时无法正确识别几何体,需要使用QDesktopWidget手动更新。这里引用:

  

应用程序以“窗口”模式启动(带顶部面板)   在开始时Qt组件的屏幕尺寸错误   加载后Qt获得正确的屏幕尺寸但QML没有   如何获得正确的屏幕尺寸:   连接信号QDesktopWidget :: workAreaResized()   发送到QML的新屏幕大小   QDesktopWidget :: screenGeometry()

是否有人经历过类似的问题?顺便说一句。我在启动时使用了闪屏,但我没有使用旧的Necessitas和其他平台。

1 个答案:

答案 0 :(得分:1)

我正在开发Android设备上的qml应用。

include <QGuiApplication>
include <QtQml/QQmlApplicationEngine>
int main(int argc, char *argv[])
{
QGuiApplication app(argc,argv);
QQmlApplicationEngine engine;
engine.load(QUrl("qrc:///main.qml"));
return app.exec();
}

(这是我的main.cpp) 我的main.qml是:

import QtQuick 2.1
import QtQuick.Controls 1.0

ApplicationWindow {
id: mainWin
visible: true
...
...

使用上面的代码我的应用程序在Android上适合全屏,我可以通过mainWin.width和mainWin.height获得屏幕大小。