Установить ориентацию на iOS во время выполнения - PullRequest
0 голосов
/ 05 октября 2018

Я использую Qt C ++ на iOS.Мое приложение имеет следующие настройки в файле plist:

   <key>UISupportedInterfaceOrientations</key>
   <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
   </array>

Это правильные настройки, которые нам нужны в нашем проекте.

У меня есть только одна часть в виде qml-просмотра с камеры(для сканера штрих-кода).Они должны быть показаны во всех ориентациях, но, по крайней мере, в альбомной ориентации (слева и справа).

Я пытаюсь установить это во время выполнения с помощью вызова из моего кода C ++:

void MobileScreenOrientation::SetOrientation()
{
//    NSNumber *value = [NSNumber numberWithInt:UIInterfaceOrientationLandscapeRight];
//    [[UIDevice currentDevice] setValue:value forKey:@"orientation"];

    [[UIDevice currentDevice] setValue:@(UIInterfaceOrientationLandscapeLeft) forKey:@"orientation"];
    [UINavigationController attemptRotationToDeviceOrientation];
}

но это не работаетОриентация в моем qml-представлении все еще портретная.Как я могу установить альбомную ориентацию на iOS во время выполнения?Спасибо!

...