La solution la plus simple est de créer manuel de transition dans l'histoire du conseil et de l'utiliser comme vu ci-dessous.
[auto performSegueWithIdentifier:@"loginSuccessSegue" expéditeur:self];
Ou
@Fabio: j'ai essayé de trouver une solution pour le même type de cas d'utilisation et j'ai presque trouvé une solution.
Cas d'utilisation
1. Arrêter la séquence de transition conditionnelle
2. Changement de destination viewController conditionnellement
Solution:
Utiliser "Personnalisé" segue.
Suivez les étapes ci-dessous pour créer des enchaînements
1. Créer une sous-classe de UIStoryboardSegue
"MyCustomSegue.h"
@interface MyCustomSegue : UIStoryboardSegue
@end
"MyCustomSegue.m"
Remplacer initWithIdentifier pour la mise en œuvre de cas d'utilisation 1 et 2
Si vous retourner nil, segue sera annulée/aucune action ne sera prise
Vous instanciez votre ViewController et d'en faire une destination.
Vous pouvez définir la destination que votre ancien fichier xib aussi.. que le code est commenté, mais j'ai veillé à ce que sera le travail.
@implementation MyCustomSegue
- (id)initWithIdentifier:(NSString *)identifier source:(UIViewController *)source destination:(UIViewController *)destination{
UIStoryboard *storyBoard= [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
UIViewController *viewController = [storyBoard instantiateViewControllerWithIdentifier:@"testIdentifier"];
// MyViewController* viewController= [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil];
return [super initWithIdentifier:identifier source:source destination:viewController];
}
- Vous devez remplacer "exécuter".
Vous pouvez mettre en œuvre de cas d'utilisation 1 ici aussi..
- (void)perform {
// if either source or destination is nil, stop
if (nil == self.sourceViewController || nil == self.destinationViewController) return;
// return; //No Action. Segue will be cancelled
UINavigationController *ctrl = [self.sourceViewController navigationController];
[ctrl
pushViewController:self.destinationViewController
animated:YES];
}
Espérons que cette aide. Plz écrire si vous n'êtes pas clair.