Mon précédent question a demandé un moyen de garder une vue de texte et un curseur en synchronisation avec les liaisons lors de la modification de la valeur "x" d'un CGRect.
En suivant les conseils de Peter Hosey sur l'utilisation du setter du contrôleur pour propager ces changements au CALayer, j'ai obtenu ce qui suit :
@interface WindowController : NSObject {
CALayer *layer;
float frameOriginX;
}
@end
@implementation WindowController
...
-(void)setFrameOriginX:(id)value {
[layer setValue:[NSNumber numberWithFloat:[value floatValue]]
forKeyPath:@"frame.origin.x"];
frameOriginX = [value floatValue];
}
-(float)frameOriginX {
return [[layer valueForKeyPath:@"frame.origin.x"]floatValue];
}
@end
J'ai utilisé des liaisons pour connecter l'affichage du texte et le curseur à "self.frameOriginX" et tout fonctionne : les deux contrôles se mettent à jour mutuellement. Cependant, je me demandais quelle était la meilleure façon de procéder.
Merci,
Charles