Iphone 如何强制UIViewController旋转
我有一个Iphone 如何强制UIViewController旋转,iphone,ios,ipad,uiviewcontroller,uikit,Iphone,Ios,Ipad,Uiviewcontroller,Uikit,我有一个UINavigationController,其中包含一些UIViewController。。。所有的UIVienController只能处于纵向模式 但是,在其中一个UIViewController中,我应该presentModalViewController。应允许该modalViewController在所有方向上旋转。 没有问题,除非我想关闭此modalViewController 如果在我关闭时,该modalViewController处于横向模式。parentViewCont
UINavigationController
,其中包含一些UIViewController
。。。所有的UIVienController
只能处于纵向模式
但是,在其中一个UIViewController
中,我应该presentModalViewController
。应允许该modalViewController
在所有方向上旋转。
没有问题,除非我想关闭此modalViewController
如果在我关闭时,该modalViewController
处于横向模式。parentViewController
无法返回到纵向
如何强制旋转我的
parentViewController
?我试过一些解决办法,但没能奏效。有什么建议吗?因为您在退出modalviewcontroller
时使用presentModalViewController
演示您的modalviewcontroller
,视图将显示或视图显示
方法不会被调用
您必须通过nsnotification
或委托模式调用UIViewController
中的方法
因此,当您关闭modalviewcontroller
时,通知您的UIViewController
并在yourmethod
中调用yourmethod
检测当前方向,如果不是纵向,则将其更改为纵向
-(void) yourmethod
{
if ([[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeLeft || [[UIDevice currentDevice] orientation] == UIDeviceOrientationLandscapeRight )
{
[[UIApplication sharedApplication] setStatusBarHidden:NO];
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait];
}
}
您到底尝试了什么?我尝试只允许一个UIViewController用于所有方向,并且此UIViewController应显示为模态。ViewWillDisplay和ViewDidDisplay在关闭后调用。。。将状态栏方向设置为纵向只会将状态栏置于纵向模式,而不是所有viewController。这意味着您使用的是以前版本的IOS 5-,因为在IOS 5和更高版本中,当您关闭modalview时,viewWillAppear不会被调用。viewWillAppear在RootViewController中被调用如果我关闭我的ModalViewController,请检查您所说的。我和你一样在6号迷失中,这很有效。。。我刚测试过。