QmlAndroid旋转屏幕

作者: zhengtianzuo | 来源:发表于2018-11-29 20:42 被阅读0次

    android的API setRequestedOrientation可以旋转屏幕

    QmlAndroidOrientation::QmlAndroidOrientation(QObject *parent) : QObject(parent)
    {
    activity = androidActivity();
    }

    QString QmlAndroidOrientation::setOrientationPortrait()
    {
    activity.callMethod<void>("setRequestedOrientation", "(I)V", 1);
    if(env->ExceptionCheck())
    {
    qDebug() << "exception occured";
    env->ExceptionClear();
    }
    return(getOrientation());
    }

    QString QmlAndroidOrientation::setOrientationLandscape()
    {
    activity.callMethod<void>("setRequestedOrientation", "(I)V", 0);
    if(env->ExceptionCheck())
    {
    qDebug() << "exception occured";
    env->ExceptionClear();
    }
    return(getOrientation());
    }

    QString QmlAndroidOrientation::getOrientation()
    {
    jint orient = activity.callMethod<jint>("getRequestedOrientation");
    if(env->ExceptionCheck())
    {
    qDebug() << "exception occured";
    env->ExceptionClear();
    }

    return ((orient == 0) ? QStringLiteral("横屏") : QStringLiteral("竖屏"));
    

    }

    image.png

    需要完整代码请访问QtAndroidExamples

    相关文章

      网友评论

        本文标题:QmlAndroid旋转屏幕

        本文链接:https://www.haomeiwen.com/subject/sglqcqtx.html