Niespójny wynik animacji UIView
Próbuję użyć animacji UIView, aby przesuwać moje widoki na ekranie. Mam kontroler UIScrollView w moim widoku kontrolera, w którym mam swoje UIViews.
Mam też tę metodę:
-(void)translateView:(UIView *)view toRect:(CGRect)rect withDuration:(CGFloat)duration
{
[UIView animateWithDuration:duration
animations:^
{
view.frame = rect;
}
completion:^(BOOL finished)
{
//Finished
}];
}
Nazywam to, aby przenieść mój UIView w animowany sposób do wybranego CGRect w określonym czasie. Mam pętlę, która tworzy i przesuwa 7 widoków. To działa świetnie, nazywam to jak poniżej, pętla oczywiście nazywająca to 7 razy w różnych widokach:
[self translateView:cell toRect:translationRect withDuration:0.7];
Jednak nie mogę tego wywołać natychmiast po tym, nic się nie dzieje. Chociaż, powiedzmy, że wywołam to ponownie po 2 sekundach NSTimer, animacja się uruchomi, ale wtedy, gdy przewijam UIScrollView, widok, który właśnie animowałem, wraca do poprzedniego CGRect.