最佳答案
                                        
                                                                        
                                我试图理解这些方法的功能。你能为我提供一个简单的用例来理解他们的语义吗?
例如,根据文档,convertPoint:fromView:方法描述如下:
将一个点从给定视图的坐标系转换为接收者的视图。
坐标系是什么意思? 接收器是什么意思?
例如,像下面这样使用 convertPoint:fromView:有意义吗?
CGPoint p = [view1 convertPoint:view1.center fromView:view1];
使用 NSLog 实用程序,我已经验证了 p值与 view1的中心重合。
先谢谢你。
编辑: 对于那些感兴趣的人,我已经创建了一个简单的代码片段来理解这些方法。
UIView* view1 = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 150, 200)];
view1.backgroundColor = [UIColor redColor];
    
NSLog(@"view1 frame: %@", NSStringFromCGRect(view1.frame));
NSLog(@"view1 center: %@", NSStringFromCGPoint(view1.center));
    
CGPoint originInWindowCoordinates = [self.window convertPoint:view1.bounds.origin fromView:view1];
NSLog(@"convertPoint:fromView: %@", NSStringFromCGPoint(originInWindowCoordinates));
    
CGPoint originInView1Coordinates = [self.window convertPoint:view1.frame.origin toView:view1];
NSLog(@"convertPoint:toView: %@", NSStringFromCGPoint(originInView1Coordinates));
在这两种情况下,self.window都是接收器。但这是有区别的。在第一种情况下,convertPoint参数以 view1坐标表示。产出如下:
ConvertPoint: from View: {100,100}
相反,在第二个函数中,convertPoint以 Superview (self.window)坐标表示:
转换点: toView: {0,0}
 
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                             
                                
                            