全屏模式视图无法在 iPad iOS 6 上旋转

Posted

技术标签:

【中文标题】全屏模式视图无法在 iPad iOS 6 上旋转【英文标题】:FullScreen modalView can't rotate on iPad iOS 6 【发布时间】:2013-03-13 09:00:03 【问题描述】:

代码:

HDComposeViewController *vc = [[HDComposeViewController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];
nav.modalPresentationStyle = UIModalPresentationFullScreen;
[self presentModalViewController:nav animated:YES];

当前的模态视图在设备旋转时无法旋转。如果我将modalPresentationStyle 更改为UIModalPresentationFormSheet,它可以工作!!!

HDComposeViewController 已经实现了旋转委托:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

    return YES;


- (BOOL)shouldAutorotate

    return YES;

有什么问题吗?谢谢。

【问题讨论】:

查看***.com/questions/3628685/… 【参考方案1】:

您需要为导航控制器添加一个类别才能在 ios 6 中旋转。

@interface UINavigationController (RotationAll)
    -(NSUInteger)supportedInterfaceOrientations;
@end

@implementation UINavigationController (RotationAll)
-(NSUInteger)supportedInterfaceOrientations 
    return UIInterfaceOrientationMaskPortrait;

@end

【讨论】:

【参考方案2】:
-(NSUInteger)supportedInterfaceOrientations

    return UIInterfaceOrientationMaskAll;
    

-(BOOL)shouldAutorotate

    return YES;


- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation

    return UIInterfaceOrientationPortrait;

【讨论】:

以上是关于全屏模式视图无法在 iPad iOS 6 上旋转的主要内容,如果未能解决你的问题,请参考以下文章

iOS 6:旋转后忽略父模式的 modalPresentationStyle

在 iOS 14 中锁定屏幕方向

有没有办法让 PayPal 网络视图旋转为横向模式?

iPad 视图旋转问题

PWA 无法在 iphone/ipad 上以全屏模式打开

单击按钮时,在 setRequestedOrientation 后自动旋转不起作用