iphone 2.x sdk - référence à un viewController dans un autre viewController affiché comme null

StackOverflow https://stackoverflow.com/questions/815422

Question

J'essaie de donner à une instance nouvellement créée d'un contrôleur de vue de sélecteur personnalisé une référence à un autre viewController similaire à so (cela se trouve à l'intérieur d'un sélecteur d'une instance de ponceViewController appelée après le déclenchement d'une ligne tableView) ...


- (IBAction)rowTapped:(id)sender {
  TimerPickerViewController *viewController = [[TimerPickerViewController alloc] initWithNibName:@"TimerPickerView" bundle:nil]
  self.timerPickerViewController = viewController;
  timerPickerViewController.ponceViewController = self.rootViewController;
  [viewController release];
}

Puis, dans mon instance timerPickerViewController, j'ai:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
  if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
    ...
    // ponceViewController is null here
    ... 
  }
}

Le timerPickerViewController s’affiche parfaitement et je peux même accéder à des éléments de ponceViewController après avoir tapé sur "Terminé". bouton, mais je suis en train de synthétiser ponceViewController et cela se trouve dans mon en-tête et tout, et je n'arrive pas à y accéder dans la méthode initWithNibName de timerPickerViewController - elle est toujours nulle. :( Quelqu'un a des idées?

Éditer: Je devrais également mentionner que ponceViewController est nul dans la méthode viewDidLoad de timerPickerViewController ...

- (void)viewDidLoad {
  ... no such thing as ponceViewController here! ...
}
Était-ce utile?

La solution

J'ai donc résolu le problème en supprimant complètement initWithNibName: (NSString *) ensemble nibNameOrNil: (NSBundle *) nibBundleOrNil de timerPickerViewController et utilisé à la place viewDidLoad . Tout semble bien fonctionner. Je pense que le problème était que la propriété n'était pas encore disponible lors de son référencement dans initWithNibName . J'espère que cela aidera quelqu'un d'autre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top