今天在调试的时候出现了如下图所示的bug。左边的是正常显示,右边的顶部出现了20像素的距离。

出现上述原因是我没有给类初始化框架。代码如下:

在测试的过程中我用到了view的frame和bounds这两个属性。

我希望知道self.view的height和width两个属性值,于是用NSLog输出方式输出在控制台上。

但是输出结果为:height:1004.000 width:768.000

这显然不是界面的height和width。

我将bounds改为frame,但是结果也是一样的。

height和width的值不对,我试了一下输出坐标原点。改为frame.origin.x和frame.origin.y,这下输出的结果x:0.000 y:20.000。。这是竖屏, 横屏的输出结果是x:20.000 y:0.000。显然都不对。

我使用self.view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];设置view的属性值,在ipad上测试能正常显示了,但是到ipod上就显示不对了。这方法看来也不行。