我需要知道如何在 5 秒后从第一个 ui 视图控制器移动到第二个视图控制器。如何定义自动移动的时间,是通过Navigation Controller,通过什么方法?
问问题
5257 次
3 回答
4
与performSelector
:
- (void)viewDidLoad{
[self performSelector:@selector(loadingNextView)
withObject:nil afterDelay:5.0f];
}
- (void)loadingNextView{
myViewController = [[MyViewController alloc] init];
[self.navigationController pushViewController:myViewController animated:YES];
}
或使用dispatch_after
on main_queue
:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 5.0f * NSEC_PER_SEC),
dispatch_get_current_queue(), ^{
[self loadingNextView];
});
于 2013-10-10T15:05:31.877 回答
3
您需要定义一个计时器(或使用 GCD / performSelector:
)在延迟后触发方法调用。然后在该方法中,您可以触发视图控制器更改(如何操作取决于当前视图控制器和下一个视图控制器之间的关系,并且不受延迟代码的影响)。
于 2013-10-10T12:45:45.080 回答
0
在 main_queue 上使用 NSTimer 或 dispatch_after。
于 2013-10-10T13:09:57.107 回答