以下情况。
在故事板中,我有两个ViewControllers。 ViewController_1 和 ViewController_2 。当第一个 ViewController_1 打开并且viewdidload void加载时,如何在一段时间后自动移动到下一个 ViewController_2 (我可以调整 >)没有任何用户干预?我正在使用这个自我调用方法:
[self performSelector:@selector(toNewViewController:) withObject:nil
afterDelay:timeInSeconds];
但我不确定,如何使用视图控制器编写方法来查看控制器转换。有什么想法吗?
答案 0 :(得分:1)
从第一个视图到第二个视图在故事板中创建一个segue(从一个View到另一个View的箭头)。
然后你需要调用toNewViewController
方法:
[self performSegueWithIdentifier:@"nameOfYourSegue" sender:self];
此调用将执行从第一个视图到第二个视图的转换。
答案 1 :(得分:0)
首先,您必须创建一个能够呈现第二个视图控制器的函数。
[NSTimer scheduledTimerWithTimeInterval:certainTime target:self selector:@selector(presentnextView) userInfo:nil repeats:NO];
-(void)presentnextView
{
ViewController *secondView=[[ViewController alloc] init];
[self presentViewController:secondView animated:YES completion:nil];
[secondView release];
}
答案 2 :(得分:0)
您可能还需要此操作来拦截控制器传输并设置目标视图控制器:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"nameOfYourSegue"]) {
/* In my case its navigation controller, for you it may be different */
UINavigationController *navi = [segue destinationViewController];
ComposeViewController *compose = [navi.viewControllers objectAtIndex:0];
compose->delegate = self;
compose.login = self.login;
compose.name = self.name;
}
}