L'accès de la vue parente d'un enfant UIView
J'ai un UIViewController avec un xib et à l'aide de Interface Builder, j'ai ajouté un enfant UIView.
À l'intérieur de l'enfant UIView, quand je clique sur un objet à l'intérieur de ce point de vue, je veux être en mesure de modifier le titre de la fenêtre.
Maintenant, je serais normalement ce paramètre
self.title = @"hi";
sur le parent UIViewController. Mais est-il possible que je peux accéder à la mère de titre de l'intérieur de l'enfant?
J'ai essayé
self.superview.title = @"i";
self.parentViewController.title = @"hi";
mais ni travail.
Toute aide appréciée
grâce
OriginalL'auteur user930731 | 2012-02-05
Vous devez vous connecter pour publier un commentaire.
self.superview.title = @"i";
renvoie un objet de typeUIView
, etUIView
n'a pas detitle
de la propriété.UIViewController
s ont unparentViewController
bien maisUIView
s ne le font pas.De sorte que le problème fondamental est que vous n'êtes pas séparer correctement votre contrôleur et la vue des classes. Ce que vous auriez normalement faire est de faire de l'affichage que vous voulez attraper appuie sur une sous-classe de
UIControl
(des choses commeUIButton
le sont déjà, mais si c'est une coutumeUIView
sous-classe, alors vous pouvez simplement changer en uneUIControl
sous-classe depuisUIControl
est elle-même une sous-classe deUIView
), puis dans votre contrôleur ajouter quelque chose comme:Si vous l'avez explicitement de ne pas investir la vue avec toutes les connaissances au sujet de sa position dans la hiérarchie vue ou comment votre point de vue contrôleurs de l'intention d'agir. Vous suffit de lui demander de vous donner une crier si elle reçoit une interaction de l'utilisateur.
UIResponder n'est pas une sous-classe de UIView. C'est l'inverse.
En effet, j'ai clairement typé
UIResponder
où je veux direUIControl
; je vais les corriger.OriginalL'auteur Tommy