模态显示的表格视图没有导航栏

Posted

技术标签:

【中文标题】模态显示的表格视图没有导航栏【英文标题】:Table View presented modally has no navigation bar 【发布时间】:2012-10-19 21:48:42 【问题描述】:

当我以模态方式呈现视图控制器时:

// 模态显示导航控制器。

[self presentModalViewController:theNavController Animation:YES];

导航栏被弹出的视图遮住了! 如何让导航栏不被覆盖??

提前致谢!

【问题讨论】:

将覆盖它的视图定位在导航栏下方。它覆盖它是因为视图共享相同的超级视图,并且可能都具有 0 的 y 原点。 要么添加一个导航栏,要么将呈现的控制器包装在 UINavigationController 你能用代码解释一下吗?谢谢! 【参考方案1】:

答案可以在iPhone: Show modal UITableViewController with Navigation bar找到 和 UINavigationBar refuses to show in Modal View Controller!

您需要将UIViewController 包装在UINavigationController 中,然后呈现导航控制器:

AccountViewController* accountViewController = [[AccountViewController alloc] initWithNibName:@"AccountView" bundle:nil]; 
... 
// Initialize properties of accountViewController 
... 
UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:accountViewController]; 
[self.navigationController presentModalViewController:navController animated:YES]; 
[navController release]; 
[accountViewController release]; 

【讨论】:

【参考方案2】:
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewContorller:someViewController];
[self presentModalViewController:navController animated:YES];

【讨论】:

以上是关于模态显示的表格视图没有导航栏的主要内容,如果未能解决你的问题,请参考以下文章

模态视图导航栏未正确显示

SwiftUI - 导航栏未显示在模态导航视图中

Xcode 导航栏、标签栏、表格视图标题未显示

模态 Segue 进入没有导航栏的导航控制器

导航栏视图作为模态视图?

模态视图导航栏的位置 - iOS7