Question

désolé si cette question est élémentaire, mais je suis bloqué sur ce bug depuis 2 jours et je n'ai pas réussi à m'en sortir.J'utilise Xcode 4.3.2

J'essaie de charger un nib nommé AController.xib dans une méthode appelée "- (void) process" dans le fichier nommé BController.m

Pour être clair, j'ai copié ./A/AController.xib (qui est un UIView), ./A/AController.m, ./A/AController.h dans le répertoire ./B

Je ne mentionne cela que parce que je ne sais pas si cela est important pour ma question.

Actuellement, mon flux fonctionne comme des flux (ce qui pourrait être mon problème) :

  • Une vue se charge avec un bouton "acheter"
  • l'utilisateur clique sur le bouton "acheter" qui possède un IBOutlet nommé "buyNow"
  • "buyNow" appelle "buy", qui appelle ensuite "processus"
  • Le processus essaie ensuite de charger la plume avec ce qui suit (option 1) :

    AContrôleur *blah;pour (id objet dans bundle) {if ([objet iskindofclass: [acontroller class]]]) bla = (acontroller *) objet;} assert (blah! = nil && "blah ne peut pas être nil");[self.view addSubView :blabla];

L'erreur que j'obtiens ici est "Thread 1 :signal sigabrt "dans main.m j'ai également essayé (option 2),

AController *myView = [[AController alloc] initWithFrame:self.view.bounds];
[self.view addSubview:myView];
[AController release];

Et (option 3)

AController * vc = [[AController alloc] initWithNibBundle:@"AController" bundle:nil];    [self.nc pushViewController:vc animated:NO];

J'obtiens la même erreur pour les 3 choix.Chaque option a été essayée dans la méthode « processus »."processus" s'écrit en B.m.Quelqu'un peut-il m'aider pour que je puisse comprendre cela ?Toute indication sur les raisons pour lesquelles ces options ont échoué serait très utile pour ma compréhension et serait très appréciée.Merci d'avoir aidé un noob !

Était-ce utile?

La solution

Si AController est un UIView sous-classe, il ne peut pas charger un NIB.Vérifiez qu'il s'agit bien d'un contrôleur, mais depuis le initWithFrame et la façon dont vous l'ajoutez à une vue, il semble que ce ne soit pas le cas ou qu'il soit mal géré.

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