Resultado Inconsistente da Animação UIView

Eu estou tentando fazer uso da animação UIView para deslizar minhas visões através da tela. Eu tenho um UIScrollView no meu controlador de visualização, no qual tenho minhas UIViews.

Eu também tenho esse método:

-(void)translateView:(UIView *)view toRect:(CGRect)rect withDuration:(CGFloat)duration
{
    [UIView animateWithDuration:duration
    animations:^
    {
        view.frame = rect;
    }
    completion:^(BOOL finished)
    {
        //Finished
    }];
}

Eu chamo isso para mover meu UIView de forma animada para um CGRect de minha escolha durante um certo tempo. Eu tenho um loop que cria e desliza para fora 7 visualizações. Isso funciona muito bem, eu chamo como abaixo, o loop de curso chamando isso 7 vezes em diferentes pontos de vista:

[self translateView:cell toRect:translationRect withDuration:0.7];

No entanto, eu não posso chamar isso de novo imediatamente depois, apenas nada acontece. Embora, digamos que eu chame isso novamente após um NSTimer de 2 segundos, a animação será executada, mas quando rolar meu UIScrollView, a visualização que acabei de animar volta para o CGRect anterior.

questionAnswers(1)

yourAnswerToTheQuestion