2017-01-09 31 views
1

我创建了一个QT/QML应用程序。并将应用程序移植到Android。 现在能够在Android设备上运行应用程序。 我想修改方向模式为横向。QT- Android应用程序中的横向模式

我没有手动编辑AndroidManifest.xml并设置android:screenOrientation="unspecified"android:screenOrientation="sensorLandscape"

<activity android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation" 
        android:name="org.qtproject.qt5.android.bindings.QtActivity" 
        android:label="Engage" 
        android:screenOrientation="sensorLandscape" 
        android:launchMode="singleTop"> 

每次当我部署它被覆盖,重置为android:screenOrientation="unspecified"

+0

你有没有建立之前,清楚了吗? 'android:screenOrientation =“landscape”'一如既往地为我工作,同时'sensorLandscape'在快速检查中表现得很好。 – BaCaRoZzo

+0

是的,我清除了构建。同样,在部署应用程序时,它重置为'未指定' –

回答

1

Qt Forum以下解决方案建议:

只需进入项目,运行,点击细节并创建androidmanifest.xml,选择一个目录。之后,将其添加到您的项目,如果它没有自动发生并编辑它。第四行应该是这样的:

@<activity android:screenOrientation="unspecified" android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|locale|fontScale|keyboard|keyboardHidden|navigation" android:name="org.qtproject.qt5.android.bindings.QtActivity" android:label="@string/app_name">@ 

只需将“未指定”更改为“sensorLandscape”并保存即可。

每次部署时它都不会被覆盖。

+3

正如问题中所述,我也这样做了。它被覆盖。 –

0

我为此得到了一个解决方案。

在您的项目文件夹中添加一个文件夹。我已经命名为'android-sources'。 将您的AndroidManifest.xml从android-build复制并粘贴到'android-sources'文件夹。 打开.pro文件,并添加以下

OTHER_FILES += \ 
    android-sources/AndroidManifest.xml 
ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android-sources 

然后打开AndroidManifest.xml

改变方向

android:screenOrientation="sensorLandscape" 
+0

另一个answser说的正是这个,预计你不必手动编辑亲.... – BaCaRoZzo

相关问题