Iphone 在另一个子视图之后添加子视图

Iphone 在另一个子视图之后添加子视图,iphone,uiview,sdk,addsubview,Iphone,Uiview,Sdk,Addsubview,我知道这很疯狂,但这里说: 我将splashView加载到我的应用程序:在ViewDiLoad上: [self.view addSubview:splashView]; UIViewAnimationOptions options = UIViewAnimationOptionCurveLinear; [UIView animateWithDuration:0.5 delay:3.0 options:options animations:^{ splas

我知道这很疯狂,但这里说:

我将splashView加载到我的应用程序:在ViewDiLoad上:

[self.view addSubview:splashView];    

UIViewAnimationOptions options = UIViewAnimationOptionCurveLinear;
[UIView animateWithDuration:0.5 delay:3.0 options:options animations:^{            
    splashView.alpha = 0.0f;
    splashView.frame = CGRectMake(512,384,-10,-10);
}

completion:^(BOOL finished){                          
    [splashView removeFromSuperview]; 
}];
这里的代码没有什么特别之处

但是,当我试图通过按钮加载与动作相同的视图时 什么也没发生:

-(IBAction)showSplash:(id)sender {
    [self.view addSubview:splashView];

    UIViewAnimationOptions options = UIViewAnimationOptionCurveLinear;
    [UIView animateWithDuration:0.5 delay:3.0 options:options animations:^{
        splashView.alpha = 0.0f;
        splashView.frame = CGRectMake(512,384,-10,-10);
    }

    completion:^(BOOL finished){ 
        [splashView removeFromSuperview]; 
    }];
}
为什么会这样

顺便说一下,如果我不在viewDidLoad上加载splashView,然后使用按钮(操作),它工作正常


这是正常行为吗?

在淡出初始视图之前重置alpha值

splashView.alpha = 1.0f;

您是如何调用此操作的,是通过xib还是您已经编写了一些代码,如果他们的代码是用于此操作的,那么也将其发布。否则它应该在这两种情况下都能工作。您看到的是您在编码方面得到的东西…(没有什么特别之处,简单的东西):)只有一个viewcontroller和一个xib(其中有两个UIView)。所有连接都正常。另外,似乎视图内存问题,当您从superview中删除一个视图时,将调用superview的释放,因此如果您第二次调用,则不需要保留该视图。这是不正确的!我根本不需要保留它!事实上,它必须发布,而这正是苹果推荐的做法。谢谢你的回复!不可能那么简单!!!!哈哈,你是个明星!!!!我真不敢相信我这么愚蠢竟然没看到!