Проблема с реализацией UIViewController, не вызывающей didRotateFromInterfaceOrientation при повороте - PullRequest
1 голос
/ 16 августа 2011

Я реализовал форму наследования классов UIViewController. Я использовал редактор xib для создания книжной ориентации панели заголовка и панели инструментов, и они вращаются правильно, когда я поворачиваю iPad. Однако у меня есть MPMoviePlayerController, размер которого я хочу изменить вручную, используя этот метод:

-(void) didRotateFromInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation
{
    _mvp.view.frame = CGRectMake(_titlebar.frame.origin.x , _titlebar.frame.origin.y + _titlebar.frame.size.height , _titlebar.frame.size.width , super.view.frame.size.height  - 2* 44); 
    [_mvp stop];
}

_mvp - мой MPMoviePlayerController. Я изменил размер, используя этот метод ранее в приложении, и у меня нет проблем, поэтому я не понимаю, почему этот метод не вызывается? (так как фильм также продолжает проигрываться) Я реализовал shouldAutoRotateToInterfaceOrientation, чтобы вернуть YES - это мешает запуску каким-либо образом?

Спасибо

1 Ответ

0 голосов
/ 09 сентября 2011

Это может быть связано с тем, что у вас есть родительский контроллер, который не передает вызов метода из didRotateFromInterfaceOrientation в дочерние контроллеры вручную.Если вы используете UINavigationController или UITabBarController в качестве родительского контроллера, вам следует взглянуть здесь .

Также убедитесь, что вы возвращаете YES to shouldAutorotateToInterfaceOrientation из всех ваших подпредставлений.

Ваше предположение о том, что для установки параметра yesAutoRotateToInterfaceOrientation для возврата YES не будет препятствовать запуску didRotateFromInterfaceOrientation.

Надеюсь, это немного поможет.

...