IOS 中的frame bounds的区别
来源:互联网 发布:活动噱头有哪些 知乎 编辑:程序博客网 时间:2024/05/06 20:00
比如下图(假设A是屏幕):
View B的Frame坐标是指相对于View A的坐标,即(50,50),其bounds的坐标是(0,0)
View C的Frame坐标是指相对于View B的坐标,即(50,50). 但其bounds坐标依然是(0,0),但其绝对坐标是(100,100)
可以通过以下函数完成坐标体系在不同View之间的切换,如下面是完成当前View向ParentView坐标的转换(一个矩阵转换)
CGRect parentRect = [currentView convertRect:blankImageView.bounds toView:self.superview];
// 将像素point由point所在视图转换到目标视图view中,返回在目标视图view中的像素值
- (CGPoint)convertPoint:(CGPoint)point toView:(UIView *)view;
// 将像素point从view中转换到当前视图中,返回在当前视图中的像素值
- (CGPoint)convertPoint:(CGPoint)point fromView:(UIView *)view;
// 将rect由rect所在视图转换到目标视图view中,返回在目标视图view中的rect
- (CGRect)convertRect:(CGRect)rect toView:(UIView *)view;
// 将rect从view中转换到当前视图中,返回在当前视图中的rect
- (CGRect)convertRect:(CGRect)rect fromView:(UIView *)view;
// controllerA 中有一个UITableView, UITableView里有多行UITableVieCell,cell上放有一个button
// 在controllerA中实现:
CGRect rc = [cell convertRect:cell.btn.frame toView:self.view];
或
CGRect rc = [self.view convertRect:cell.btn.frame fromView:cell];
// 此rc为btn在controllerA中的rect
或当已知btn时:
CGRect rc = [btn.superview convertRect:btn.frame toView:self.view];
或
CGRect rc = [self.view convertRect:btn.frame fromView:btn.superview];
- IOS 中的frame bounds的区别
- iOS 中frame 和 bounds 的区别
- ios frame与bounds的区别比较
- iOS中frame和bounds的区别
- IOS 中frame bounds origin的区别
- IOS frame与bounds的区别
- iOS Frame和bounds的区别
- iOS View frame和bounds的区别
- iOS---frame和bounds的区别
- iOS,frame和bounds的区别
- ios视图frame与bounds的区别
- iOS中frame与bounds的区别
- iOS中frame和bounds的区别
- ios视图frame与bounds的区别
- iOS中frame和bounds的区别
- iOS frame与bounds的区别
- frame,bounds的区别
- iOS frame和Bounds 以及frame和bounds区别
- 小型词典
- C# Redis实战(四)
- 多科成绩单
- 二分专攻:HDU 2199(解方程)
- 公司进化论(一) 在炮灰中呼唤炮火
- IOS 中的frame bounds的区别
- Oracle10g总结
- 通用查询
- Python正则表达式指南
- hadoop作业调优参数整理及原理
- poj2918 Tudoku---dfs
- oracle11g r2 rac安装
- C#编写的这段代码运行不出来,帮忙看看是哪里有错?感激不尽。。。
- sql server 无法删除本地发布