2013-03-14 2 views
0

J'ai créé un contrôleur de tabulation avec deux vues (configuration standard à partir du modèle). La première vue accède à un tableau dans un objet dataController. Lorsque j'appuie sur la deuxième vue de la barre d'onglets, je veux que la référence de dataController soit définie sur la propriété dataController de la deuxième vueController.instantiateViewControllerWithIdentifier dans Storyboard

J'utilise appeler

SecondViewController *vc = [[self storyboard] instantiateViewControllerWithIdentifier:@"SecondViewController"]; 
vc.dataController = self.dataController; 

Cependant, quand je l'appelle mon countArrayObjects sur la propriété dataController de secondViewController, je reçois toujours 0 retour - eventhough il devrait y avoir des objets dans le tableau et je ne peux pas comprendre pourquoi?

J'ai défini l'identificateur sur le secondViewController dans MainStoryBoard et je n'ai pas de plantages, la propriété n'est pas définie (je pense).

À des fins de test, j'appelle instantiateViewControllerWithIdentifier à partir d'un simple bouton, avant de cliquer sur le secondView. Et j'appelle countArrayObjects de viewDidLoad sur secondViewController.

Des idées?

Répondre

0

Hmmm ... J'avais le même problème. Pour l'instant, la seule façon de contourner ce problème est de tester les vues superbes étant nil - qui en accédant au sélecteur de vue de la classe déclenche l'affichage de l'événement de chargement ...

quelque chose qui cloche ... si

Ceci est le code de test écrit ... Je

SummaryViewController *sc = [self.childViewControllers objectAtIndex:0]; 
if(sc.view.superview == nil) sc.checkInTime.alpha = 0; 
//-- by inspecting the value, it will call the viewDidLoad method of the controller. 

il fonctionne, mais il est faux.

Questions connexes