Есть ли способ программно облегчить эту анимацию, помимо ручной настройки PNG в программном обеспечении для редактирования изображений? т.е.: Показать эффект easeOut. Я смотрел и не видел ответа в Интернете, если я не использую неправильные ключевые слова для поиска ответа.Programmatically easeOut UIImageView animationImages
NSMutableArray * images = [@[] mutableCopy];
for (int i = currentFrame; i <= maxFrame; i++) {
NSString * imageString = [NSString stringWithFormat:@"icon_introchart_%ld",i];
UIImage * newImage = [UIImage imageNamed:imageString];
[images addObject:newImage];
}
_introChart.animationImages = images;
_introChart.animationDuration = 2.0f;
_introChart.animationRepeatCount = 1;
EDITED -> но я все еще не хватает кое-что:
CAKeyframeAnimation * animation = [CAKeyframeAnimation animationWithKeyPath:@"contents"];
[animation setCalculationMode:kCAAnimationLinear];
animation.duration = 2.0;
animation.values = images;
animation.repeatCount = 1;
animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
[animation setRemovedOnCompletion:YES];
[_introChart.layer addAnimation:animation forKey:@"contents"];
// _introChart.animationImages = images;
// _introChart.animationDuration = 2.0f;
//_introChart.animationRepeatCount = 1;
EDIT: мне нужно поставить CGImageRefs вместо UIImages для "содержания" ... он работает в настоящее время.
UIImage * newImage = [UIImage imageNamed:imageString];
CGImageRef cgImage = [newImage CGImage];
[images addObject:(__bridge id)(cgImage)];
Если бы у меня был никель на каждый раз, когда я забыл взять CGImage UIImage при настройке содержимого слоя ...! :) Проблема, конечно же, в том, что не существует ошибки времени компиляции или времени выполнения, но ничего на самом деле не происходит. – matt