在完成之前就开始驱动UIView

我采用了[UIView animateWithDuration:...]驱动UIImageView的视图序列。代码如下:

[UIView animateWithDuration:1.0 animations:^{
    imageView.frame = newImageRectPosition;
}completion:^(BOOL finished){

}];

我希望在当前过程没完成的时候就开始驱动下一个UIImageView,比如在当前过程进行到一半的时候。能实现吗?

用两个UIView启动块。其中一个在第一个进行一半时延迟,代码如下:

[UIView animateWithDuration:1.0 
                 animations:^{ ... }
                 completion:^(BOOL finished){ ... }
];

[UIView animateWithDuration:1.0
                      delay:0.5
                    options:UIViewAnimationCurveLinear
                 animations:^{ ... }
                 completion:^(BOOL finished) { ... }
];

用计数器呗

NSTimer* timer;

timer = [NSTimer scheduledTimerWithTimeInterval:animationTime/2 target:self selector:@selector(runAnimation) userInfo:nil repeats:NO];

[UIView animateWithDuration:animationTime animations:^{
    imageView.frame = newImageRectPosition;
} completion:nil];

- (void)runAnimation
{ 

    [UIView animateWithDuration:animationTime animations:^{
        imageView.frame = newImageRectPosition;
    } completion:nil];
}