禁止 UITableViewcontroller 横向旋转(保持纵向)

Posted

技术标签:

【中文标题】禁止 UITableViewcontroller 横向旋转(保持纵向)【英文标题】:Disable UITableViewcontroller from rotating in Landscape (keep it Portrait orientation) 【发布时间】:2014-11-21 19:34:54 【问题描述】:

我正在尝试将 UITableViewcontroller 保持为纵向。因此,我不想旋转到横向模式。我添加了以下方法。但这并没有帮助,请注意我使用的是 ios 8:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

    // Return YES for supported orientations
     if(interfaceOrientation== UIInterfaceOrientationPortrait)
    
        return YES;
    else
    
        return NO;
    


注意,我是通过 UINavigationController 调用 UITableView

UINavigationController *navigationController = [[UINavigationController alloc]
                                                    initWithRootViewController:svc];
    // configure the new view controller explicitly here.

    [self presentViewController:navigationController animated:YES completion: nil];

【问题讨论】:

你的意思是你想要 UIInterfaceOrientationPortraitUpsideDown? 不..我只是不想让视图旋转到横向。 您可以在 info.plist 中设置可用的旋转模式 【参考方案1】:

您可以在 Info.plist 中设置启用的方向界面,或者,如果您只想要这种方式的 Table,您必须在呈现视图时手动修改 navigationController 中的supportInterfaceOrientation。 'child' 将采用来自 navigationController 的值。然后,当您关闭表格时,您必须手动重置supportInterfaceOrientation

【讨论】:

以上是关于禁止 UITableViewcontroller 横向旋转(保持纵向)的主要内容,如果未能解决你的问题,请参考以下文章

如何将选定的 UITableViewController 值添加到以前的 UITableViewController?

在动态 UITableViewController 的标头中嵌入静态 UITableViewController

当转到另一个 UITableViewController 时 UITableViewController 冻结

重新加载 UITableViewController

删除单元格 - UITableviewController

iOS 7 - PopOver 中的 UITableViewController 可以找到带有错误的 segue Receiver(UITableViewController) has no segu