UIView
を指定してCAAnimation
でアニメーション化し、アニメーション化中(ビューにジェスチャ認識子がある)のビューとやり取りしたいとします。アニメーション中にCAAnimationの変更を適用
私が正しく理解している場合、CAAnimation
はビューのレイヤーをアニメーション化しますが、ビュー自体は元の位置にとどまります。
CAAnimation
でUIView
を移動させるにはどうすればよいですか?
UIView
を指定してCAAnimation
でアニメーション化し、アニメーション化中(ビューにジェスチャ認識子がある)のビューとやり取りしたいとします。アニメーション中にCAAnimationの変更を適用
私が正しく理解している場合、CAAnimation
はビューのレイヤーをアニメーション化しますが、ビュー自体は元の位置にとどまります。
CAAnimation
でUIView
を移動させるにはどうすればよいですか?
移動する代わりに、UIView
をタッチして受信したい領域をカバーするように展開し、layer
をアニメーション化することができます。ビューopaque
プロパティをNO
に設定してください。
ビューのサブビューのレイアウトに影響を与えずに、レイヤーをビューの範囲外に移動させる場合など、ビュー自体のレイヤーを移動するのではなく、〜view.layer
を追加することができます。
あなただけが行うことができます視覚的な「粘り」を気にしている場合:
[myAnimation setRemovedOnCompletion:NO];
しかし、これは視覚的です。実際のレイヤのプロパティは変更されません。これは良いetiqueteはもちろんのこと、ダウン投票された理由を知ることは有用であろう
// You have code above that to register the property you want to animate...
[myAnimation setFromValue:[NSNumber numberWithFloat:0.0f]];
[myAnimation setToValue:[NSNumber numberWithFloat:1.0f]];
いいえ、私はユーザーのやりとりを気にします。とにかくありがとう。 – hpique
:
あなたはあなたのような何かを行うことができ、レイヤーのプロパティは、新しい値に更新されるようにしたい場合。 質問者が達成しようとしていることを正確に知らなくても、有効なアプローチだと思います。 –