Ключевое окно не вращается - PullRequest
1 голос
/ 17 марта 2011

У меня есть UIViewTable с панелью навигации. Когда я читаю данные, я отображаю UIViewController с ActivityIndicator в верхней части таблицы. Проблема в том, что когда я поворачиваю устройство, этот вид сверху не вращается, я не знаю почему? :( Вот как я могу добавить вид сверху с ActivityIndicator:

UIView *view = [[UIApplication sharedApplication] keyWindow];
[view addSubview:viewWithLoader.view];

Вот как я это удаляю:

[viewWithLoader.view removeFromSuperview];

Это метод из вида сверху (с ActivityIndicator):

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
    return YES;
}

Ответы [ 2 ]

2 голосов
/ 17 марта 2011

после вызова [self.window makeKeyAndVisible]; в вашем делегате приложения представления, которые получают уведомление о ротации, анимацию и т. д., и т. д. являются подвидами этого начального представления.

Мне случилось, что у меня была верхняя строка, которая заменила строку состояния. поэтому я подумал, что будет хорошей идеей добавить его в качестве вспомогательного представления ключевого окна. Но этот случай привел к тому результату, который вы испытываете.

У вас есть 2 варианта

  1. тот, кто владеет этим видом сверху, должен позаботиться о его вращении или удалить / добавить его при повороте, чтобы он имел правильную ориентацию.

  2. сделать это вид сверху подпредставлением одного из представлений, которые являются автоматическими.

И то, и другое действительно легко реализовать, но я не нашел. 2 визуально привлекательнее для пользователя.

0 голосов
/ 18 марта 2011

Я нашел решение :) Я добавляю этот вид сверху (с загрузчиком) как «модальный вид», и вращение отлично работает во всех видах:)

...
[self presentModalViewController:ldr animated:YES];
...
[self dismissModalViewControllerAnimated:YES];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...