0

プロパティの暗黙的なアニメーションをオーバーライドしようとするとposition、レイヤーが目的の位置にすばやく点滅してから、明示的なアニメーションを開始します。

CAKeyframeAnimation* animation = [CAKeyframeAnimation animation];
animation.path = path; // some CGPath
animation.duration = 1.0;

[newTopLayer setPosition:CGPointMake(x, y)]; // Setting final values for stickness
[newTopLayer addAnimation:animation forKey:@"position"];

positionキーが上書きされないようです。なんで?で試してみましたCATransactionが、まだ運がありません。

更新
さらなる調査により、newTopLayerとにかく暗黙的にアニメーション化されていないことが示されました。情報:それはによって支えられていUIViewます。

4

1 に答える 1

0

OK、それはとても簡単ですCALayer。aがに裏打ちされている場合UIView、すべての暗黙のアニメーションは無効になります。暗黙のアニメーションが必要な場合は、のレイヤーにサブレイヤーを作成しUIViewます。

于 2012-05-04T01:56:25.057 に答える