ViewController与Document provider中的系统导航栏重叠

时间:2015-04-14 10:25:48

标签: ios ios8.3 document-provider

在UIDocumentPickerExtensionViewController子类中显示视图控制器会重叠系统导航栏。只有在使用Xcode 6.3(iOS 8.3 SDK)编译时才会出现此问题。

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:myVC];
[self presentViewController:navController animated:NO completion:nil];

任何指针都会有所帮助。

3 个答案:

答案 0 :(得分:1)

尝试使用(在viewDidLoad()中):

self.edgesForExtendedLayout = UIRectEdgeNone;

这解决了我们的问题。

答案 1 :(得分:0)

尝试将其放在目标viewController viewDidLoad

[[self navigationController] setNavigationBarHidden:YES animated:NO];
[[self navigationController] setNavigationBarHidden:NO animated:NO];

我希望这就是你想要的。

答案 2 :(得分:0)

这是Apple在提交问题后的回复。

这是故意行为。在iOS 8.3上,我们公开了导航控制器供您推送,因此您无需提供自己的导航控制器。尝试将代码更改为

UIViewController* testVC = [[UIViewController alloc] init];
testVC.view.backgroundColor = [UIColor greenColor];
if(self.navigationController)
{
    [self.navigationController pushViewController:testVC animated:YES];
}
else
{
    UINavigationController* nc = [[UINavigationController alloc] initWithRootViewController:testVC];
    [self presentViewController:nc animated:NO completion:nil];
}

应支持iOS 8.3和之前的版本。