iOS应用程序打开屏幕到应用程序闪烁

时间:2013-06-26 02:00:39

标签: ios objective-c

我有一个构建且工作正常的iOS应用程序。我添加了启动图像,但现在当应用程序从启动图像转换到实际的应用程序时,它会闪烁(也就是说它们不是平滑过渡)。有趣的是我的启动画面与我显示的初始视图相同。我如何制作我的发布图像是通过在模拟器中运行应用程序并转到文件>保存屏幕截图,然后将它们拖动到xcode中。

2 个答案:

答案 0 :(得分:0)

在我使用的开源类中找到了这个

//Fade in
[UIView animateWithDuration:0.3 animations:^{
    self.alpha = 1;
}];

删除它,现在一切正常。

答案 1 :(得分:0)

这是我用于splahscreen的东西。 在Appdelegate类中设置此代码。 它运行顺利。

- (void)showSplashView
{
    splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, self.window.frame.size.width, self.window.frame.size.height)];
    splashView.image = [UIImage imageNamed:@"default.png"];
    [self.window addSubview:splashView];
    [self.window bringSubviewToFront:splashView];

    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1.0];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.window cache:YES];
    [UIView setAnimationDelegate:self];
    [UIView setAnimationDidStopSelector:@selector(startupAnimationDone:finished:context:)];
    splashView.frame = CGRectMake(-80, -80, self.window.frame.size.width+160.0, self.window.frame.size.height+160.0);
    splashView.alpha = 0.0;
    [UIView commitAnimations];
}

- (void)startupAnimationDone:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context
{
    [splashView removeFromSuperview];
}

这里'splashView是一个简单的UIImageView',您可以使用您的图像名称代替默认的png。