码迷,mamicode.com
首页 > 移动开发 > 详细

IOS bounds 与 frame的区别

时间:2015-12-02 22:43:08      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:

  今天写案例代码,发现资料上设置一个UIButton的frame时,是这样设置的

btnCover.frame = self.view.bounds;

但是我自己一开始是这样写的

btnCover.frame = self.view.frame;

 后来,我发现,两个不同的写法都达到了我想要的想过,也就是UIButton的大小和父容器的大小一致,我就纳闷了,既然是同样的效果,为什么即有bounds又有frame。后来经查,发现如下区别:

-(CGRect)frame{
    return CGRectMake(self.frame.origin.x,self.frame.origin.y,self.frame.size.width,self.frame.size.height);
}

 

-(CGRect)bounds{
    return CGRectMake(0,0,self.frame.size.width,self.frame.size.height);
}

 ,观察上面两段代码,发现,frame的远点是任意的,而bounds的原点却是 0 ,0.

frame: 该view在父view坐标系统中的位置和大小。(参照点是,父亲的坐标系统)
bounds:该view在本地坐标系统中的位置和大小。(参照点是,本地坐标系统,就相当于ViewB自己的坐标系统,以0,0点为起点)

IOS bounds 与 frame的区别

标签:

原文地址:http://www.cnblogs.com/lomomiao/p/5014374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!