UIViewController实现在旋转时不调用didRotateFromInterfaceOrientation的问题

时间:2011-08-16 12:54:28

标签: objective-c ipad ios4 mpmovieplayer

我实现了一个继承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 :(得分:0)

可能是因为您的父控制器没有手动将方法调用从 didRotateFromInterfaceOrientation 传递给子控制器。如果您使用UINavigationController或UITabBarController作为父控制器,则应该查看here

另外,请确保从所有子视图中返回YESAutorotateToInterfaceOrientation。

您设置shouldAutoRotateToInterfaceOrientation以返回YES的假设将阻止didRotateFromInterfaceOrientation运行。

希望这有点帮助。