Я использую анимацию UIView, чтобы случайным образом анимировать 5 квадратов (UIButtons) вокруг экрана.В зависимости от выбора пользователя, можно увидеть от 2 до 5 квадратов.Когда видны только 2, скрытые значения остальных трех устанавливаются в YES, поэтому они фактически все еще анимируются (верно?), Они просто не видны.Но когда видны только 2, анимация плавная, но когда все пять видны, анимация становится прерывистой.Я не совсем уверен, как это описать, потому что квадраты все еще движутся с правильной скоростью и движутся в правильные точки;изменчивость не ужасна, просто достаточно плоха, чтобы быть заметной.Есть ли способ избавиться от этого?Это код, который я использую для анимации квадратов:
Редактировать: измененные анимации для блока:
[UIView animateWithDuration:animationSpeed
delay:0
options:UIViewAnimationOptionCurveLinear
animations:^{
view.center = destPoint;
}
completion:^(BOOL finished){
if([view isEqual:squareThree])
[self moveBadGuys];
}
];
/*for(UIButton* button in squareArray) {
if(!shouldMove)
return;
[UIView beginAnimations:@"b" context:nil];
[UIView setAnimationDuration:animationSpeed];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
view.center = destPoint;
[UIView commitAnimations];
}*/
Редактировать: представление, представляющее это, является третьим в стеке из трех UIViewController, представленных
ViewController* controller = [[[ViewController alloc] init] autorelease];
[self presentModalViewController:controller animated:NO];
Разве этот способ представления представлений расходует память?