1

私は外側に成長し、大きくなるようにアニメーション化する円を持っています。残念ながらanchorPoint、中央から外側にアニメーション化しないように設定しているにもかかわらず、左上の位置をロックしているようです。何が起こっている?

中心から外れた円を示すこの画像を参照してください

ここに画像の説明を入力

コード

- (void)setLayerProperties {
    rippleLayer = [[CAShapeLayer alloc] init];
    rippleLayer.fillColor = [UIColor clearColor].CGColor;

    rippleLayer.strokeColor = _Color.CGColor;
    //rippleLayer.contentsGravity = @"center";
    rippleLayer.anchorPoint = CGPointMake(0.5,0.5);
    rippleLayer.bounds = self.bounds;

    rippleLayer.path = bezierPath.CGPath;
    [self.layer addSublayer:rippleLayer];
}

// Now animate the circle outwards
rippleLayer.opacity = 1;
CABasicAnimation *scale = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
[scale setFromValue:[NSNumber numberWithFloat:1.0f]];
[scale setToValue:[NSNumber numberWithFloat:2.0f]];
[scale setRepeatCount:1];
[scale setDuration:1.0f];
//[scale setRemovedOnCompletion:YES];
[scale setFillMode:kCAFillModeForwards];

[rippleLayer addAnimation:scale forKey:scale.keyPath];
4

1 に答える 1