我对iPhone开发相对较新。我有两个视图控制器。我希望在3秒间隔后通过淡出动画从一个屏幕导航到另一个屏幕。任何人都可以提供有关如何进行此操作的指示吗?
答案 0 :(得分:3)
您不需要睡觉,也只能在后台进程中睡觉。看到你是动画,你需要在主线程中这样做。
此动画将花费3秒钟并将视图alpha设置为0.即淡出。然后当动画结束时,它会触发完成块。这将推动newView。
[UIView animateWithDuration:3.0 animations:^{
[self.view setAlpha:0.0];
} completion:^(BOOL finished) {
[self.navigationController pushViewController:newView animated:YES];
}];
答案 1 :(得分:1)
使用sleep暂停ios中的执行,然后按下导航控制器上的下一个视图控制器。
您可以通过更改导航控制器动画来执行淡入淡出动画,如下所述:http://www.davidhamrick.com/2011/12/31/Changing-the-UINavigationController-animation-style.html
答案 2 :(得分:0)
编写一个新方法来编写导航代码,然后从按钮操作或编写当前导航代码的位置使用“performSelector:withObject:afterDelay:”方法,延迟为3,对象为nil。
答案 3 :(得分:0)
对于UIViewController
你可以使用:
transitionFromViewController:toViewController:duration:options:animations:completion:
或transitionWithView:duration:options:animations:completion:
UIView
。