Comment effectuer des Enchaînements dans AppDelegate?
Je suis en train de terminer une application sur IOS 5.1 avec Storyboard. Fondamentalement, je suis en train de faire une application dropbox. Depuis que je suis en utilisant Dropbox SDK lien vers Dropbox est gérée dans AppDelegate.m. L'utilisateur a la possibilité d'être en mesure de dissocier, à partir d'une session et lier de nouveau en Vue différents Contrôleurs. Donc, chaque fois que l'utilisateur lien et non liés application a pour changer de vue de Appdelegate de vue contrôleur qui n'est pas liée à rootviewcontroller
Dans Dropbox d'origine l'exemple de Dropbox traités de transition comme le code suivant
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
if ([[DBSession sharedSession] handleOpenURL:url]) {
if ([[DBSession sharedSession] isLinked]) {
[navigationController pushViewController:rootViewController.photoViewController animated:YES];
}
return YES;
}
return NO;
}
Mais je suis en utilisant la table de montage avec manette de Navigation et l'une des méthodes suivantes ne sont pas de travail, j'ai mis des méthodes dans les commentaires.
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
if ([[DBSession sharedSession] handleOpenURL:url]) {
if ([[DBSession sharedSession] isLinked]) {
NSLog(@"App linked successfully!");
//At this point you can start making API calls
/*UIViewController *viewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:NULL] instantiateViewControllerWithIdentifier:@"MeetingViewController"];
[self.navigationController pushViewController:viewController animated:YES]; */
//[self performSegueWithIdentifier:@"xxxx" sender:self];
/* LoginDropboxViewController *loginController=[[LoginDropboxViewController alloc] initWithNibName:@"LoginDropbox" bundle:nil];
[navigationController pushViewController:loginController animated:YES]; */
}
return YES;
}
//Add whatever other url handling code your app requires here
return NO;
}
Voici le storyboard de l'application
Alors, comment puis-je changer de vue dans AppDelegate.h ?
Remarque: Si j'ajoute un segue et le nom de la séquence permet de dire goToMeeting
[auto performSegueWithIdentifier:@"goToMeeting" expéditeur:self];
d'erreur que je reçois est : No Visible @interface for 'AppDelegate' declares the selector performSegueWithIdentifier:sender
OriginalL'auteur u.gen | 2012-09-06
Vous devez vous connecter pour publier un commentaire.
Si vous vous efforcez de vue manuellement, plutôt que de segueperform code suivant sera très probablement travailler pour vous
OriginalL'auteur Mord Fustang
Vous pouvez le faire comme ceci:
Cela ne fonctionne que si l'index dans viewControllers tableau correspond à celui de votre vue-contrôleur, et si elle existe bien sûr. Dans ce cas, est le premier (dans le tableau et storyboard).
La séquence ("goToMeeting") ne doit pas être jointe à une action. La façon dont vous le faire est par le contrôle-les glisser à partir de la propriétaire du fichier de l'icône au bas de la table de montage séquentiel scène à la scène de destination. Une fenêtre apparaît, qui vous demandera une option dans le “Manuel de Transition”; choisir “Push” comme type. Appuyez sur la petite place et assurez-vous que vous êtes dans les Attributs de l'Inspecteur. Donner un identifiant qui vous servira de référence dans le code.
OriginalL'auteur Andrei R.