Elj*_*jay 2 c++ java qt android qtandroidextras
我正在使用 Qt 和 C++ 开发一个 android 应用程序。我的整个应用程序都有纵向。但是当我播放视频时,我想将方向更改为横向,视频结束后它应该再次更改为纵向。
所以问题是如何在适用于 Android 的 Qt/C++ 应用程序中将屏幕设置为横向或纵向模式。
您不需要通过 Java 代码调用它。您可以使用 JNI 从 C++ 直接调用它,如下所示:
void MyAndroidHelperClass::setScreenOrientation(int orientation)
{
QAndroidJniObject activity = QAndroidJniObject::callStaticObjectMethod("org/qtproject/qt5/android/QtNative", "activity", "()Landroid/app/Activity;");
if ( activity.isValid() )
{
activity.callMethod<void>
("setRequestedOrientation" // method name
, "(I)V" // signature
, orientation);
}
}
Run Code Online (Sandbox Code Playgroud)