J'ai créé trois UIImageViews. J'ai ensuite ajouté un UITextField à chaque image en tant que sous-vue.Récupération de la référence à superview à partir de UITextField?
Lorsque l'utilisateur clique sur le champ de texte, je souhaite capturer le champ de texte UIImageView auquel il appartient. J'essaie le code suivant:
-(void)textFieldDidBeginEditing : (UITextField *)textField {
textField = retainedObject;
MyPicture *capture = nil;
for (UIImageView *oneView in retainedObject.superview) {
if ([oneView isMemberOfClass:[myPicture class]])
capture = (UIImageView *)oneView;
}
Cependant, je reçois une erreur qui UIView peut ne pas répondre à compter par énumération. Il semble que l'aperçu du champ de texte est UIView plutôt que UIImageView peut-être? Quelqu'un peut-il aider à résoudre cela?
Merci,
Martin
Merci - mais je suis confus par ce que vous entendez par cast vers ImageView. L'aperçu de l'UITextField est déjà un UIImageView? – GuybrushThreepwood
Ajoutez simplement 'UIImageView * superImageView = (UIImageView *) [visionneuse retainObject];', et vous pouvez ensuite appeler facilement toutes les fonctions 'UIImageView' de l'objet. – jrtc27
Merci encore - appréciez votre aide. Je reçois maintenant une erreur que UITextField (ici retainObject) ne peut pas répondre à superView? – GuybrushThreepwood