最初は画面全体がマスクされる効果を作ろうとしています。ボールが画面上を移動すると、ボールがある領域のマスクが解除され、ボールがあった領域はマスクされないままになります。
次のコードがあります。
CALayer * ball = [CALayer layer];
ball.bounds = CGRectMake(0, 0, 42, 42);
ball.position = [[[alphabet controls] objectAtIndex:0] CGPointValue];
ball.contents = (id)([UIImage imageNamed:@"done.png"].CGImage);
[self.layer addSublayer:ball];
[self.layer setMask:ball];
CAKeyframeAnimation *anim = [CAKeyframeAnimation animationWithKeyPath:@"position"];
anim.path = path;
anim.repeatCount = HUGE_VALF;
anim.duration = 8.0;
[ball addAnimation:anim forKey:@"race"];
このアニメーションはビュー全体をマスクし、ボール レイヤーの背後にあるものだけを表示します。私の質問は次のとおりです。明らかにされた画面の部分をマスク解除したままにするにはどうすればよいですか?