J'étudiais Storyboard sur le nouveau iOS 5.0. Il semble vraiment simple à utiliser et à implémenter mais ma question est ... Comment puis-je mettre à jour l'ancien Xib vers Storyboard?Xib Vs Storyboard, comment mettre à jour
Par exemple. J'ai développé des classes quand il n'y avait pas de storyboard et certaines de ces classes viennent avec un fichier xib qui m'aide à configurer une mise en page personnalisée rapidement. Évidemment, quand j'utilise ce type de classe, j'ai besoin de l'instancier en utilisant initWithNibName: bundle: et il est maintenant prêt à l'emploi et je peux l'utiliser autant de fois que nécessaire parce que layout est codé dans xib. Maintenant Storyboard ... Storyboard ne permet pas de charger le contrôleur de vue depuis xib et je n'ai pas trouvé le moyen de charger le fichier du storyboard dans le storyboard principal. Il semble que j'ai besoin de reconfigurer la mise en page pour un contrôleur de vue particulier chaque fois que je l'utilise dans un nouveau projet. Il semble que maintenant je suis obligé de reconfigurer la disposition de mon contrôleur dans chaque nouvelle application qui utilise ce contrôleur au lieu d'utiliser le fichier xib qui a la mise en page à l'intérieur.
Peut-être qu'il y a quelque chose que je n'ai pas compris. Tout le monde peut m'aider à comprendre la meilleure façon d'utiliser le storyboard?
Merci d'avance.
Gabriele.
EDIT en réponse à sw3n
Peut-être que je compris grâce à sw3n. Ce code ci-dessous fonctionne mais est-ce complètement correct?
// All this code is implemented inside the MyViewController class.
// Attached to an UIButton;
- (void)loadNewController:(id)sender {
[self performSegueWithIdentifier:@"newControllerIdentifier" sender:sender];
}
- (void)performSegueWithIdentifier:(NSString *)identifier sender:(id)sender {
// As suggested by sw3n
// Load the storyboard from file.
UIStoryboard *storyboardTest = [UIStoryboard storyboardWithName:@"StoryBoardLoad_Test" bundle:nil];
// Instantiate the viewController that live in the storyboard file
UIViewController *destinationViewController = [storyboardTest instantiateViewControllerWithIdentifier:@"newControllerIdentifier"];
// Instantiate a segue to start the chain
UIStoryboardSegue *segue = [[UIStoryboardSegue alloc] initWithIdentifier:identifier source:self destination:destinationViewController];
[self prepareForSegue:segue sender:sender];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"newControllerIdentifier"]) {
[segue.destinationViewController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
// Are there new options to present the controller?
// If I was in a NavigationController a could obviously push it.
[self presentModalViewController:segue.destinationViewController animated:YES];
}
}
Cela ne répond pas à ma question. C'est ainsi que le storyboard fonctionne dans un seul fichier .storyboard. Je suis intéressé par l'utilisation du fichier de storyboard multiple. – Gabriele