您的位置:首页 > 其它

frame bounds center

2015-11-16 22:02 260 查看
frame和bounds是UIView中的两个属性(property)。
frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)
bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)
center指的是:该view的中心点在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)
翻译文档上的
bounds是指这个view在它自己坐标系的坐标和大小,而frame指的是这个view在它superview的坐标系的坐标和大小
,区别主要在坐标系这一块。


很明显一个是自己为原点的坐标系,一个是以屏幕为原点的坐标系。

view的frame是view在它的super view 的位置与尺寸。


Frame is  in  terms of superview's coordinate system  

框架是从父视图的坐标系统



Bounds  is in  terms of  
local coordinate  system
是在局部坐标系统。



实际上只有bounds和center两个属性。frame是为了方便直观多加的属性。所以修改了一个可能会影响到其他属性。

例如下面修改bounds的测试结果:

       bounds(0,0,100,100) --> (0,0,200,200)本地坐标系统原点往左往上分别50。center不变,效果是按照中心放大view
 

       bounds(0,0,100,100)--> (100,100,100,100)本地坐标系统原点往左往上分别100。center不变,没有可视效果变化(但是本地坐标系统的原点已经改变)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: