2013-11-28 6 views
2

В симуляторе и на iPhone, в iOS 6 и iOS 7, я заметил, что UIActivityViewController не вращается вверх ногами. Неважно, представляю ли я его из общего viewController или из корня.Представление UIActivityViewController вверх дном

Такое поведение портит мой интерфейс ...

Недо теперь мой лучший попробовать это предотвратить UIActivityViewController от представляется, когда устройство перевернуто и блокировать вращение, когда UIActivityViewController представлен. Во всяком случае, я не могу найти ссылки на эту проблему.

Ожидается ли такое поведение? Знаете ли вы какой-либо лучший подход, чтобы избежать такого поведения, или лучший способ предотвратить мой интерфейс от коррупции?

+0

есть вы выяснить решение? Я также ищу ту же проблему, но не получил обоснованного ответа. –

+0

Даже я тоже сталкиваюсь с той же проблемой. Не могли бы вы сообщить мне, можете ли вы это исправить или нет. – Mihir

+0

Нет, к сожалению пока нет ... – Beppe

ответ

1

Можно выполнять все вращения UIActivityViewController, поскольку это подкласс UIViewController, который имеет методы вращения.

1) В вашем UIActivityViewController.m метод файл добавления:

- (BOOL)shouldAutorotate 
{ 
    return YES; 
} 

И

- (NSUInteger)supportedInterfaceOrientations 
{ 
    return UIInterfaceOrientationMaskAll; 
} 

2) в вашей проверке info.plist, если Ваше приложение поддерживает ориентацию, Вы хотите.

В iOS 6 и более поздних версиях ваше приложение поддерживает ориентацию интерфейса, определенную в файле Info.plist вашего приложения. Контроллер вида может переопределить метод supportedInterfaceOrientations, чтобы ограничить список поддерживаемых ориентаций. Как правило, система вызывает этот метод только на контроллере корневого представления окна или контроллере представления, представленном для заполнения всего экрана; контроллеры дочерних представлений используют часть окна, предоставленную для них контроллером родительского представления, и больше не участвуют непосредственно в решениях о том, какие вращения поддерживаются.

Пересечения маски Ориентации приложения и маска ориентации контроллера представления используется для определения того, какие ориентации контроллер представления может быть повернут в. **

Смежные вопросы