2015-04-04 2 views
1

Как скрыть мой UIImageView после завершения анимации? Моя анимация отлично работает, когда я перехожу в представление. Я хочу быть в состоянии скрыть изображение после завершения анимации. Как я могу это сделать?Как скрыть мой UIImageView после завершения анимации?

-(void) animate 
{ 
    NSLog(@"Animate"); 

    CGPoint startPoint = [pickerCircle center]; 
    CGPoint endPoint = [pickerButton1 center]; 

    CGMutablePathRef thePath = CGPathCreateMutable(); 
    CGPathMoveToPoint(thePath, NULL, startPoint.x, startPoint.y); 
    CGPathAddLineToPoint(thePath, NULL, endPoint.x, endPoint.y); 

    CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"position"]; 
    animation.duration = 3.f; 
    animation.path = thePath; 
    animation.repeatCount = 2; 
    animation.removedOnCompletion = YES; 
    [pickerCircle.layer addAnimation:animation forKey:@"position"]; 
    pickerCircle.layer.position = endPoint; 
} 

ответ

-1

Вы пробовали завершить? Here example 4.2 есть пример, показывающий и скрывающий представление с использованием завершения. Я не знаю анимации хорошо, но я думаю, что завершение должно работать.

+0

Извините, на самом деле это не отвечает на мой вопрос. Да, я вижу примеры в других типах анимаций, которые используют «завершение»: блоки, я ищу специально для помощи с CAKeyframeAnimation' –

1

Set Делегат свойство анимации для себя так:

animation.delegate = self; 

И тогда вы можете использовать:

-(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag { 
    // hide your UIImage here 
} 

Он будет называться, когда анимация делается.