2010-09-07 4 views
0

Je ai une application dans laquelle un contrôleur de vue est poussé et quand nous sautons du contrôleur poussé je ne reçois pas la valeur de la variableproblème en passant des données quand pop d'une vue à un autre contrôleur de vue dans l'iphone

Par exemple considérons il y a un contrôleur dans lequel je suis havinh la variable d'int nommée Component maintenant je pousse à contrôleur de B sur l'événement de clic de bouton d'un contrôleur, quand nous sommes poussés à vue de B est vue de Tableau et quand je choisis la cellule je passe juste la valeur d'indexpath.row au composant d'int et ici j'affiche la valeur de composant qui est correcte, maintenant quand son bruit à un contrôleur encore j'imprime la valeur du composant qui vient pour être 0 (zéro) toujours. Où je me trompe

Répondre

0

Sans voir de code, je dirais que vous n'avez pas défini de référence au contrôleur A dans le contrôleur B, donc quand vous appelez A.someInt = 5, rien ne se passe. Dissociez d'autres langues, en appelant une méthode sur une référence nulle renvoie simplement nil. Il ne jette pas une erreur.

+0

ici je règle la référence pour le contrôleur A dans le contrôleur B en l'allouant et en classe de contrôleur B quand j'imprime la valeur de A.component = [indexPath.row], il imprime correctement la valeur de A.component et quand View apparaîtra la méthode d'un contrôleur lorsque j'imprime le composant valeur null. – mrugen

+0

Vous ne devez pas allouer une nouvelle instance de A. Ce que vous faites est de définir la valeur dans la nouvelle instance pas l'ancienne. – skorulis

+0

ya j'ai essayé sans allouer le contrôleur A dans B, mais n'a pas obtenu la valeur, désolé si ma question est trop basique – mrugen

Questions connexes