IPhone - 从加载屏幕动画到主应用程序视图

IPhone - 从加载屏幕动画到主应用程序视图

问题描述:

我有一个IPhone应用程序,我想在显示UI之前尝试登录并执行一些初始设置。我目前有我的Default.png设置为图像,我有一个视图具有相同的图像。当我的应用程序加载Default.png加载,然后加载我的加载屏幕。加载屏幕是MainWindow.xib中我的根视图控制器的视图。加载我的应用程序后,将显示一个标签栏控制器,它是在根视图控制器中以编程方式创建的。IPhone - 从加载屏幕动画到主应用程序视图

我希望能够在加载视图(在MainWindow.xib中定义)和我的标签栏控制器(在根视图控制器中定义)之间进行动画处理。我只是在做

self.view = tabBarController.view; 

切换视图。我注意到,用UIView动画包装时不起作用。我的问题是我应该如何切换视图。我尝试了addSubView和insertViewAtIndex,这两个都做动画,但在屏幕顶部留下20px状态栏空白(位于已经存在的状态栏下方)。我假设有一些简单的东西,但我不确定它是什么。

你不应该做self.view = tabController.view ...你想要什么类型的动画?你有没有考虑过使用NavigationViewController?推送到NavigationController的大头贴将允许您为过渡动画(推入新视图)。如果您没有使用导航视图控制器,您可以使用其他选项:在UIViewController中使用presentModalView:动画方法,还可以在使用addSubview时定义动画,苹果站点中的节拍器示例项目显示如何在单击info按钮时进行操作继承人链接https://developer.apple.com/iphone/library/samplecode/Metronome/。希望这可以帮助

+0

我不应该为动画做self.view = tabController.view - 还是永远不会?过去我一直在处理我的观点。我这样做是因为我基本上希望我的根视图控制器是一个标签栏控制器。我遇到了addSubView的问题 - 比如视图顶部的20px状态栏空白。 – Brian 2009-08-31 14:45:24

+0

我没有想过使用导航控制器来管理多个视图,当我不深究某些东西时。这是常见的做法吗? – Brian 2009-08-31 14:47:57

+0

我不认为它的好做法是做self.view =其他一些视图...... 20px状态栏的差距可能是由于您的视图具有可能会混淆UI系统的影响(460中的一部分和480中的一部分) 。是的,这是非常普遍的做法,使用导航控制器深入到多个视图,你可以看到它在任何地方都可以使用 – Daniel 2009-08-31 15:08:09

我只需要将您用于Default.png图像的UIImageView放置为主UI视图的最顶层子视图。换句话说,马上显示您的主界面,但在其前面加载图像。然后,无论您喜欢如何,都可以通过将其alpha属性更改为0来为加载图像设置动画效果,或通过其变形来缩小它的大小。