찾다

 >  Q&A  >  본문

objective-c - ios 关于animationDidStop动画完成后执行哪个动画的问题

CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
    animation.fromValue = @(1.0);
    animation.toValue = @(1.5);
    animation.duration = 0.3f;
    animation.removedOnCompletion = NO;
    animation.fillMode = kCAFillModeForwards;
    animation.delegate = self;
    [_view1.layer addAnimation:animation forKey:@"animationPosition1"];
    
    
        -(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag{
    NSLog(@"dfdfdfdf:%@",[_view1.layer valueForKey:@"animationPosition1"]); // 为什么这句是null
    if ([_view1.layer valueForKey:@"animationPosition1"] == anim) {
        NSLog(@"anim:%@",anim);
    }
    
}

我就想达到某一个动画结束做某件事 但是 NSLog(@"dfdfdfdf:%@",[_view1.layer valueForKey:@"animationPosition1"]);始终为空 求解答

PHPzPHPz2890일 전249

모든 응답(2)나는 대답할 것이다

  • 阿神

    阿神2017-04-17 17:58:56

    으아악

    회신하다
    0
  • 阿神

    阿神2017-04-17 17:58:56


    또는 문자열 판단 사용 [[_view1.layer animationKeys].firstObject isEqualToString:@"animationPosition1"];

    회신하다
    0
  • 취소회신하다