web-dev-qa-db-fra.com

Comment changer "initwithNibName" dans le storyboard?

Je veux changer le code ci-dessous avec le storyboard avec Xcode 4.2.

UIViewController * example     = [[ExampleViewController alloc] initWithNibName:@"ExampleViewController" bundle:nil];

Maintenant, le fichier ExampleViewController.xib existe. mais je veux le faire avec le storyboard. Aidez-moi, s'il vous plaît. (Je ne suis pas bon en anglais. Désolé)

55
jokor7

La classe UIStoryboard est votre amie:

UIStoryboard* sb = [UIStoryboard storyboardWithName:@"mystoryboard"
                                              bundle:nil];
UIViewController* vc = [sb instantiateViewControllerWithIdentifier:@"ExampleViewController"];
132
Stephen Darlington
  • S'il est toujours dans son propre fichier xib, vous ne changez rien.
  • Si vous avez tout déplacé dans un storyboard, vous n'aurez pas souvent besoin de le faire car vous lieriez des contrôleurs de vue à l'aide de séquences.

Si aucune des conditions ci-dessus n'est vraie, c'est-à-dire que votre contrôleur de vue est sur le storyboard mais qu'aucun enchaînement ne s'y connecte, alors vous voulez que le UIStoryboard instantiateViewControllerWithIdentifier: méthode décrite dans la documentation . Vous devez définir l'identifiant dans le storyboard pour que cela fonctionne.

8
jrturton