2015-04-19 178 views
0

通过点击UITabBarController的项目,我打电话给UIViewController。当我试图让导航栏在UIViewControllerviewDidLoad方法高度象下面这样:获取导航栏高度

self.navigationController.navigationBar.frame.origin.y 
self.navigationController.navigationBar.frame.size.height 

两个以上线路返回零。我怎么能得到导航栏的高度?

+0

什么是根视图控制器?标签栏或导航栏? –

+0

标签栏控制器 – zontragon

+0

self.navigationController!=你的viewDidLoad中的nil? – Krivoblotsky

回答

0

确保你没有错过任何下面的代码行

MyViewController *myViewController = [[MyViewController alloc] init]; 
UINavigationController *myNavigationController = [[UINavigationController alloc] initWithRootViewController:myViewController]; 

self.window.rootViewController = myNavigationController; 
-1

注意,它的行为不同,如果你设置:

navigationBar.translucent = NO; 

More here

+0

这并不回答这个问题 - 它应该是对原始问题的评论。 –

+0

你应该等待几年才能告诉我 – RealNmae

0

试试这个.. 。

CGFloat navigationBarHeight = self.navigationController.navigationBar.bounds.size.height;