iPad:在applicationDidFinishLaunching期间根据方向添加全屏图像

时间:2011-08-24 15:27:39

标签: ipad orientation uiwindow

我想在启动iPad应用时制作一个“启动画面”:默认 - [风景|人像] ~ipo.png在启动时显示,之后我想自己添加相同的图像让它淡出。

问题是applicationDidFinishLaunching期间的方向;我有问题要确定纠正图像并将其添加到UIWindow(它似乎是纵向)。

如何在发布期间添加全屏图像然后让它淡出?

非常感谢!

2 个答案:

答案 0 :(得分:2)

您可以将flashView添加到RootViewController.view中的viewDidLoad

flashView = [...]; // save reference to this object
flashView.alpha = 1.0;
[self.view addSubview:flashView];

applicationDidFinishLaunching RootViewController viewDidAppear之后NSTimeInterval duration = 1.0; int curve = UIViewAnimationCurveLinear; // Setup the animation [UIView beginAnimations:@"splash fade out" context:NULL]; [UIView setAnimationDuration:duration]; [UIView setAnimationCurve:curve]; [UIView setAnimationBeginsFromCurrentState:YES]; // change alpha flashView.alpha = 0.0; // Commit the changes [UIView commitAnimations]; 将alpha属性设为动画0.0:

{{1}}

答案 1 :(得分:1)

application:didFinishLaunchingWithOptions:期间的方向问题是预期的行为;有关此主题的上一个问题,请参阅Get launch orientation of iPad app

最佳解决方案是让您的根视图控制器处理显示启动屏幕,或使用带UIModalTransitionStyleCrossDissolve的模态视图控制器显示启动屏幕。这样您就可以对正常的view rotation events做出反应,并根据需要更改启动画面图像。

或者您可以阅读UIDevice的orientation媒体资源,但有可能这也不会更新(即使您从beginGeneratingDeviceOrientationNotifications致电application:didFinishLaunchingWithOptions:)也是如此晚了。