Qt 5.3 Android获得原生屏幕旋转



我在获取默认屏幕方向时遇到了问题
我没有找到任何方法从Qt代码中获得这个方向,但我发现android.provider.Settings.System。USER_ROTATION包含我需要的信息。我怎么能得到这个属性从Qt除了运行Java代码?
http://community.kde.org/Necessitas/JNI也许我可以把这个属性的值从主java类到我的Qt代码?(我指的是qtactical .java)

user_rotation 0 -> ROTATION_0  
user_rotation 1 -> ROTATION_90  
user_rotation 2 -> ROTATION_180  
user_rotation 3 -> ROTATION_270  

thanks for help

upd:我在qactivity .java中发现了有趣的一行

loaderParams.putString(APPLICATION_PARAMETERS_KEY, parameters.replace(' ', 't'));

也许我可以加载默认屏幕方向作为参数?
我将试着

无需java

    QScreen *s = app.primaryScreen();
    qDebug() << "nativeOrientation: " << s->nativeOrientation();
    qDebug() << "orientation: " << s->orientation();
    qDebug() << (s->isLandscape(s->nativeOrientation()) ? "nativeOrientation lanscape" : "nativeOrientation not lanscape");
    qDebug() << (s->isLandscape(s->orientation()) ? "orientation lanscape" : "orientation not lanscape");
    qDebug() << (s->isPortrait(s->nativeOrientation()) ? "nativeOrientation portrait" : "nativeOrientation not portrait");
    qDebug() << (s->isPortrait(s->orientation()) ? "orientation portrait" : "orientation not portrait");

相关内容

  • 没有找到相关文章

最新更新