J'essaie de comprendre les fonctionnalités de ces méthodes. Pourriez-vous me fournir un simple cas d'utilisation pour comprendre leur sémantique?
À partir de la documentation, par exemple, convertPoint:fromView: méthode est décrite comme suit:
Convertit un point dans le système de coordonnées d'un point de vue à celui du récepteur.
Quel est le système de coordonnées veux dire? Ce qui sur le récepteur?
Par exemple, cela fait-il sens à l'aide de convertPoint:fromView: comme la suivante?
CGPoint p = [view1 convertPoint:view1.center fromView:view1];
À l'aide de NSLog utilitaire, j'ai vérifié que la valeur de p coïncide avec vue1 du centre.
Je vous remercie à l'avance.
EDIT: pour ceux que cela intéresse, j'ai créé un simple extrait de code pour comprendre ces méthodes.
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));
Dans les deux cas, l'autonomie.la fenêtre est le récepteur. Mais il y a une différence. Dans le premier cas, la convertPoint paramètre est exprimé en vue1 coordonnées. Le résultat est le suivant:
convertPoint:fromView: {100, 100}
Dans la seconde, au lieu de cela, le convertPoint est exprimé dans superview (de soi.de la fenêtre) coordonnées. Le résultat est le suivant:
convertPoint:toView: {0, 0}