iOS - вращение с помощью контроллера Nav - PullRequest
1 голос
/ 18 февраля 2011

Это маленькая, но раздражающая проблема.Я использую контроллер навигации, и он не будет вращаться.Я использовал код раньше без контроллера навигации, и он прекрасно вращался.Теперь даже не вызывается «- (BOOL) shouldAutororateToInterfaceOrientation ...», поэтому я немного растерялся.

Заранее спасибо.

Редактировать: И да, у меня«- (BOOL) canBecomeFirstResponder» установлен.

Edit2: у меня есть вызовNavcontroller возвращает его в портретный режим ...

Ответы [ 2 ]

3 голосов
/ 18 февраля 2011

Проблема с UIWindow в распространении этих событий для просмотра контроллеров, отличных от корневого.Если вы добавляете этот контроллер непосредственно в UIWindow, и он добавлен не первым, то вместо этого добавьте его в корневое представление.

В противном случае вам, вероятно, потребуетсявзглянуть на реализацию ваших собственных преобразований вращения.У меня есть подкласс UIViewController, который делает тяжелую работу за вас на github здесь .

0 голосов
/ 18 февраля 2011

Ваш контроллер должен иметь return YES in:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
  // Overriden to allow any orientation.
  return YES;
}

Также, если у вас есть UITabBarController, каждый контроллер должен использовать этот метод для возврата YES.

...