在Android中更改特定页面的方向

在Android中更改特定页面的方向,第1张

在Android中更改特定页面的方向

可以使用

setRequestedOrientation
Java函数更改Android上的屏幕方向,因此您应该从应用中调用Java函数。要在Qt
Android应用程序中运行Java代码,您应该使用Qt Android
Extras
模块,该模块包含用于在Android上进行开发的其他功能。

您可以使用JNI从C / C 调用Java函数或从Java回调C / C 函数。

在这里,您可以在静态Java方法中使用它,例如:

package com.MyApp;public class OrientationChanger{    public static int change(int n)    {        switch(n)        {    case 0:        setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);        break;    case 1:        setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);        break;        }    }}

首先,您需要将此添加到您的.pro文件中:

QT += androidextras

并包括相关的头文件:

#include <QAndroidJniObject>

然后,您可以从C ++代码中调用此静态Java函数。

要将方向更改为横向模式:

bool retVal = QAndroidJniObject::callStaticMethod<jint>  ("com/MyApp/OrientationChanger" // class name  , "change" // method name  , "(I)I" // signature  , 0);

要将方向更改为纵向模式:

bool retVal = QAndroidJniObject::callStaticMethod<jint>  ("com/MyApp/OrientationChanger" // class name  , "change" // method name  , "(I)I" // signature  , 1);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5506663.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存