iOS开发之bounds与frame的区别

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

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了新洲免费建站欢迎大家使用!

iOS开发之bounds与frame的区别

 

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

iOS开发之bounds与frame的区别

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

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

iOS开发之bounds与frame的区别

但是输出结果为: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上就显示不对了。这方法看来也不行。

 

 

iOS开发之bounds与frame的区别

 


新闻名称:iOS开发之bounds与frame的区别
URL链接:http://ybzwz.com/article/jdiogg.html