frame与bounds的区别比较
2016-06-17 17:46
239 查看
翻译文档上的
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
{
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);
}
很明显,bounds的原点是(0,0)点,而frame的原点却是任意的。
frame 是相对坐标。bounds是绝对坐标。
什么是绝对坐标值,相对坐标值?
绝对坐标是:X,Y 就是相对于坐标原点的。
例如(15,20)相对坐标是:@X,Y 就是相对于参考点(可以是自己设定的一个点)。
例如(15,20)相对于参考点(1,1)的坐标,表示:@14,19
(15,20)相对于参考点(-1,-1)的坐标,表示:@16,21
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
{
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);
}
很明显,bounds的原点是(0,0)点,而frame的原点却是任意的。
frame 是相对坐标。bounds是绝对坐标。
什么是绝对坐标值,相对坐标值?
绝对坐标是:X,Y 就是相对于坐标原点的。
例如(15,20)相对坐标是:@X,Y 就是相对于参考点(可以是自己设定的一个点)。
例如(15,20)相对于参考点(1,1)的坐标,表示:@14,19
(15,20)相对于参考点(-1,-1)的坐标,表示:@16,21
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- C#的WebBrowser操作frame实例解析
- js函数在frame中的相互调用详解
- 对frameset、frame、iframe的js操作示例代码
- 用JS操作FRAME中的IFRAME及其内容的实现代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- iOS App开发中的UISegmentedControl分段组件用法总结
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程