frame bounds center

来源:互联网 发布:查看iptables开放端口 编辑:程序博客网 时间:2024/05/17 07:30

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
是在局部坐标系统。

uiview <wbr><wbr><wbr><wbr>frame,bounds,center的差异

实际上只有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不变,没有可视效果变化(但是本地坐标系统的原点已经改变)




1 0
原创粉丝点击