2016-05-12 3 views
0

Ich muss wissen, wie man nach 5 Sekunden von FirstViewController zum secondViewController navigiert. Wie man die Zeit definiert, um sich automatisch zu bewegen, ohne auf irgendeinen Knopf zu klicken ich bin neu in der Entwicklung von iOS. Ich habe diesen Code geschrieben, aber Fehler bekommen. bitte hilfe. Danke im Voraus!So navigieren Sie mit FirstViewController zum secondViewController ohne Klicken auf eine Schaltfläche

// firstViewController.h 

#import <UIKit/UIKit.h> 
#import "secondViewController.h"//This import is not necessary 
#import "firstViewController.h" 

@interface firstViewController : UIViewController 
    @property (strong, nonatomic) SecondViewController *secondViewController; //This instance is not necessary 
@end 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self performSelector:@selector(loadingNextView)withObject:nil afterDelay:5.0f]; 
} 

- (void)loadingNextView 
{ 
    secondViewController = [[secondViewController alloc] init]; 
    [self.navigationController pushViewController:secondViewController animated:YES]; 
} 

@end 
+0

Teilen Sie Ihre Forschung hilft jedem. Sagen Sie uns, was Sie versucht haben und warum es nicht Ihren Bedürfnissen entsprach. Dies zeigt, dass Sie sich die Zeit genommen haben zu versuchen, sich selbst zu helfen, es rettet uns von wiederholenden offensichtlichen Antworten, und vor allem hilft es Ihnen, eine spezifischere und relevante Antwort zu erhalten! Siehe auch [wie man fragt] (http://stackoverflow.com/questions/how-to-ask) – Frits

+0

@yash versuche meinen Code es funktionierte für mich und hoffe seine Arbeit für Sie auch –

Antwort

0

Versuchen Sie, diese

[NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(yourMethod) userInfo:nil repeats:NO]; 
0

performSelector:withObject:afterDelay:

Documentation

und später verwenden performSegueWithIdentifier

Beispiel:

[self performSelector:@selector(goToSecondController) withObject:nil afterDelay:5.0]; 

- (void)goToSecondController { 
    [self performSegueWithIdentifier:@"segueInYourStoryboard" sender:self]; 
} 
0

Bitte versuchen Sie meinen Code seine vielleicht geholfen , wenn Sie mit .xib initWithNibName dann anderweitig verwenden init

[NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(push) userInfo:nil repeats:NO]; 

- (void)push 
{ 
    secondViewController = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];; 
    [self.navigationController pushViewController:secondViewController animated:YES]; 
} 
0

Wenn Sie mit UIStoryBoard dann aus zunächst eine segue erstellen zu Sekunde. Und führen Sie einfach performSegueWithIdentifier:sender:

Wenn nicht dann, keine Sorge. Verwenden Sie einfach dispatch_after und schreiben Sie Ihren Push-Code dort drüben. Es wird nach einer bestimmten Zeit ausgeführt.

Keine Notwendigkeit zu nehmen NSTimer oder performSelector:afterDelay: Sie können es sicher mit dispatch_after tun.

Verwandte Themen