MFMailComposeViewController вызывает книжную ориентацию на iPad - PullRequest
2 голосов
/ 18 января 2011

Я использую MFMailComposeViewController для в приложении электронной почты, и он прекрасно работает в портретном режиме. Но когда мое приложение, которое поддерживает обе ориентации, находится в альбомном режиме, используя [selfsentModalViewController: mailVC animated: YES];

переводит все мое приложение в портретный режим, который мне не нужен.

Я пробовал много вещей, переопределяя MFMailComposeViewController shouldAutorotateToInterfaceOrientation: методы, отставку первого респондента и так далее без особой удачи.

Как мне заставить работать MFMailComposeViewController в альбомной ориентации на iPad?

Ответы [ 2 ]

2 голосов
/ 29 августа 2013

У меня была та же проблема, и я попытался переопределить, это мне не помогло.

Попробуйте отправить «presentModalViewController:" в rootViewController окна вашего приложения (в AppDelegate).

Iдумаю, что это работает для меня, потому что MFMailComposeViewController не может принудительно установить ориентацию rootViewController, но может принудительно установить ориентацию viewController, которая была выдвинута навигационным контроллером rootViewController.

Вам нужно что-то вроде этого:

    [((AppDelegate *)[UIApplication sharedApplication]).window.rootViewController presentViewController:mailVC animated:YES completion:nil];
1 голос
/ 20 сентября 2011

Попробуйте переопределить функцию автоповорота:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) ||
            (interfaceOrientation == UIInterfaceOrientationLandscapeRight));
}

В качестве альтернативы представьте MFMailComposeViewController из UIViewController, который управляет вращением в вашем приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...