2012-03-17 14 views
0

ここで私の脳をアニメーションの周りに巻き込もうとしています。暗黙のUIViewアニメーションを有効にするにはどうすればよいですか?

_________ 
|Parent | 
|   | 
|   | 
| _____ | _____ 
| |A | | |B | 
| |_____| | |_____| 
|_________| 
Parentは、親ビューで

ABは両方UIViewインスタンスである:ここに私の基本的な状況です。 ABUIViewを選択しました。わかっているように、レイヤーはユーザーの操作を受け取ることができないためです。私がやりたいアニメーションは非常にシンプルです:単にAをオフスクリーンで左にスライドさせ、Bを右からスライドさせたいと思います。

CALayer *layer = viewA.layer; 
layer.position = CGPointMake(initialLayer.position.x, initialLayer.position.y - 480); 

が、無アニメーションをすぐに更新プロパティ:

は、私は次のようなものを試してみました。

私はCABasicAnimationを使ってこの問題を解決することができましたが、この種のシナリオで暗黙のアニメーションを使用する方法を学びたいので、将来的にはより早くプロトタイプを作成できます。 This postは、UIViewが暗黙のアニメーションを実行できないことを示唆しています(少なくともデフォルトで)。

私の質問:

  1. 暗黙的UIViewの層のプロパティをアニメーション化する方法はありますか?どうやって?
  2. もしそうでない場合は、私の方法とは違う、これを行うより良い/標準的な方法がありますか?

答えて

1

あなたはanimateWithDurationを使用することができます。

[UIView animateWithDuration:2.0 animations:^{ 
    viewA.frame = newFrame; 
}]; 
+0

ありがとうございました。これは完全に機能しました! – benekastah

関連する問題