2012-07-13 5 views
0

Je travaille sur une application utilisant storyboard et le contrôleur de navigation est intégré. Dans la vue enfant, quand un bouton est pressé, il appelle une fonction dans le contrôleur de vue parent sans changer la vue.mise à jour enfant vue textview dans storyboard

[self.delegate buttonPressed]; 

et la méthode censée mettre à jour le texte de textview dans la vue enfant. childviewcontroller.textViewName.text = @ "quelque chose"; Mais le textview n'est pas mis à jour.

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{ 
[[segue destinationViewController] setDelegate:self]; 
} 

Longue histoire courte, si je veux que le contrôleur de vue parent pour modifier le texte d'un textview dans le contrôleur de vue de l'enfant, comment dois-je mettre en place lorsque j'utilise story-board. Quelqu'un peut-il me donner quelques idées? Je ne sais pas si je l'explique clairement ou non. Je suis encore un peu nouveau à cela et j'apprends tout en faisant cette application. Merci d'avance.

Répondre

0

Cela semble confus. Si vous besoin de déclencher une fonction dans la société mère VC, pourquoi ne pas créer une méthode de classe qui renvoie ce dont vous avez besoin et faire quelque chose comme ça dans cet enfant VC:

NSString *newText = [MyParentViewController getSomeData]; 
myTextView.text = newText; 

ou mieux encore, mettre cette classe méthode dans une nouvelle classe qui obtient des données pour vos VC. Cela serait plus conforme à la programmation orientée objet.

+0

Ce sera compliqué à faire dans mon application. Je travaille avec du matériel externe que je dois utiliser une bibliothèque fournie par une entreprise de câble iPhone. En bref, si je veux que le contrôleur de vue parent modifie le texte d'une vue de texte dans le contrôleur de vue enfant, comment dois-je le configurer lorsque j'utilise le storyboard? – user1491987

Questions connexes