为什么navigationBar中框架的大小为空?

时间:2012-01-14 20:38:41

标签: iphone ios ios4

我尝试从导航栏中获取帧并获得零宽度和高度。代码:

CGRect f = self.navigationController.navigationBar.frame;

在调试模式下,我从f.height得到零。

有什么问题?

3 个答案:

答案 0 :(得分:2)

使用此

NSLog(@"frame:%@",NSStringFromCGRect(f)); 

这将显示框架。

答案 1 :(得分:0)

代码中的

f.height应为f.size.height


通过这样做:此代码

CGRect f = self.navigationController.navigationBar.frame;
NSLog(@"f.size = (%.2f, %.2f)", f.size.width, f.size.height);

给我这个输出:

  

2012-01-14 15:54:32.909 naveCon [4071:207] f.size =(320.00,44.00)

答案 2 :(得分:0)

很可能你将int作为float或float来记录为int。如果你这样做

int ih = f.size.height;

float fh = f.size.height;

您将看不到任何警告,因为float将转换为float,但尝试记录

NSLog("%d", fh);

NSLog("%f", ih);

应该给你一个警告,只需阅读即可。