【iOS】Frame和Bounds的区别以及获取绝对坐标的办法

终于搞清楚了,UIView中的frame获取的是相对于所在ParentView的坐标,而bounds则是指UIView本身的坐标。
比如下图(假设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];

原文地址:https://www.cnblogs.com/lisa090818/p/3240231.html