私はiPhone開発に不慣れで、iOS
6.1を実行しています。と という 2 つのビュー コントローラーがfirstViewController
ありsecondViewController
ます。ボタン、imageViewなどをクリックせずに、1000ミリ秒後に別のView Controllerから1つのView Controllerを呼び出す必要があります.
それはどのように可能ですか?
このようなコードを使用できます
NSTimer *timer;
timer=[NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(touchDetected) userInfo:nil repeats:NO];// because 1000 miliseconds=10 sec
touchDetected メソッドにコードを入れます
-(void)touchDetected
{
LoginPage * loginPageObj=[[LoginPage alloc]initWithNibName:@"LoginPage" bundle:nil];
[self.navigationController pushViewController:loginPageObj animated:YES];
[timer invalidate];
}
ここでは、メソッド名と ViewControllers 名を変更するなど、必要に応じてコードを使用できます。
お役に立てれば。
この方法を使用できます
[self performSelector:@selector(methodToCall:) withObject:nil afterDelay:1000.0];
試してみてください
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(pushView) userInfo:nil repeats:NO];
-(void)pushView {
SeconViewController *SeconViewControllerObj=[[SeconViewController alloc] initWithNibName:@"SeconViewController" bundle:nil];
[self.navigationController pushViewController:SeconViewControllerObj animated:YES];
}
これを使用して、一定時間後にSelector (Method)
using を呼び出すことができます-NSTimer
[NSTimer scheduledTimerWithTimeInterval:<#(NSTimeInterval)#> target:<#(id)#> selector:<#(SEL)#> userInfo:<#(id)#> repeats:<#(BOOL)#>];
あなたが必要とするのはメソッドです、それを呼び出しましょう
-(void)pushNextVC;
そして呼び出し
[self performSelector:@selector(pushNextVC) withObject:nil afterDelay:<#(NSTimeInterval)#>];
NSTimerを使用したソリューションも可能ですが、これには「performSelector」で十分です:)
あなたが利用することができます
[self performSelector:@selector(gotoNextView) withObject:nil afterDelay:]