for(NSInteger i = 0; i < 10; i++)
{
....
singleThread = [[NSThread alloc] initWithTarget:self selector:@selector(changeLayerBackground) object:nil];
[singleThread start];
}
функция changeLayerBackground выглядит следующим образом:
- (void) changeLayerBackground
{
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"backgroundColor"];
animation.delegate = self;
......
[layer addAnimation:selectionAnimation forKey:@"animation"];
}
Я обнаружил, что функция animationDidStop:finished:
вызывается только после завершения всего цикла.
Есть ли у кого-нибудьИдея об этом?
Теперь я подумал об этом, потому что делегатом анимации является self, контроллер представления.А анимация вызывается потоком, поэтому делегат не работает.Но я не знаю, как это изменить.Я пытался использовать поток в качестве замены, он все еще не работает.
Любое тело может помочь мне с этим?
Моя цель - когда анимация запускается, циклследует приостановить, пока анимация не закончится, тогда цикл должен быть продолжен.пока цикл не закончится.