我有以下简单代码:

[otherClass doMethodOneWhichHasAnimation];

该动画持续0.8秒。紧随其后的是推送 View Controller 的代码:
SchemeView *schemeView = [[SchemeView alloc] init];
    [self.navigationController pushViewController:schemeView animated:YES];
    [schemeView release];

问题是,它不等待就推送了 View Controller ,我希望它等待。延迟只会延迟整个过程,包括从开始播放第一个动画。

我如何才能让它等待0.8秒再运行第二位代码?

最佳答案

您可以在动画制作完成后进行推送

[UIView animateWithDuration:0.8
        animations:^{
            // Animation
        }
        completion:^(BOOL finished){

          // PushView

        }];

对于
或者
[self performSelector:@selector(metohodToPushView) withObject:nil afterDelay:0.8];

关于iphone - 在继续播放其他类的动画之前,我该如何等待?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6330050/

10-11 19:46