Poptorootviewcontroller延迟

时间:2014-11-17 17:40:50

标签: ios objective-c animation delay poptoviewcontroller

我有一个执行poptorootviewcontroller的方法“test”。我想在poptorootviewcontroller的动画之前加一些延迟。这是我的代码:

-(void)test{
[UIView animateWithDuration:5.0
                      delay: 2.5
                    options: UIViewAnimationOptionCurveEaseIn
                 animations:^{
                     [self.navigationController popToRootViewControllerAnimated:NO];
                 }
                 completion:nil];
}

但它不起作用。 有帮助吗?谢谢!

1 个答案:

答案 0 :(得分:3)

您发布的代码用于执行动画,而不是延迟。

一个好的解决方案是使用dispatch_after

-(void)test{
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        [self.navigationController popToRootViewControllerAnimated:NO];
    });

以您想要的任何延迟替换2.5