码迷,mamicode.com
首页 > 其他好文 > 详细

frame与bounds的区别比较

时间:2014-12-17 22:32:59      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:android   sp   strong   on   bs   ef   size   nbsp   ui   

翻译文档上的?bounds是指这个view在它自己坐标系的坐标和大小 而frame指的是这个view在它superview的坐标系的坐标和大小?区别主要在坐标系这一块。??很明显一个是自己为原点的坐标系,一个是以屏幕为原点的坐标系。绝对坐标。。。相对坐标。。。比如屏幕旋转的时候就要以相对来重绘。 ?frame 如果一个按钮,是在表格里,按钮的frame 的坐标也是相对的,并不是相对屏幕,也就是说是相对坐标,不是绝对坐标??我也想知道任何一个uiview如何求得它在屏幕上的坐标。??view 的frame是view在它的super view 的位置与尺寸。?view 的bounds可以用来帮助它的subview来定位的 ,layoutSubviews。??Frame  is  in  terms  of superview‘s  coordinate  system   ??框架是从父视图的坐标系统???Bounds   is in  terms  of   local  coordinate  system?是在局部坐标系统

frame和bounds是UIView中的两个属性(property)。

frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)

bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)

-(CGRect)frame{

returnCGRectMake(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);

}

 

 

很明显,bounds的原点是(0,0)点,而frame的原点却是任意的。?frame 如果一个按钮,是在表格里,按钮的frame 的坐标也是相对的,并不是相对屏幕,也就是说是相对坐标,不是绝对坐标。?frame 是相对坐标。bounds是绝对坐标。?Android的开发过程中,绝对坐标,这样画出来的位置都是相对于屏幕的而不是相对于控件的?? 什么是绝对坐标值,相对坐标值??绝对坐标是:X,Y    就是相对于坐标原点的。                   ?例如(15,20)相对坐标是:@X,Y   就是相对于参考点(可以是自己设定的一个点)。                 ?   例如(15,20)相对于参考点(1,1)的坐标,表示:@14,19                           ?(15,20)相对于参考点(-1,-1)的坐标,表示:@16,21?bounds是指这个view在它自己坐标系的坐标和大小 而frame指的是这个view在它superview的坐标系的坐标和大小.?区别主要在坐标系这一块。?很明显一个是自己为原点的坐标系,一个是以屏幕为原点的坐标系。

frame与bounds的区别比较

标签:android   sp   strong   on   bs   ef   size   nbsp   ui   

原文地址:http://www.cnblogs.com/ZhangYuGe/p/4170513.html

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