ios apple 我如何啟用隱式UIView動畫?



ios swift document (1)

你可以使用animateWithDuration

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

試圖把我的大腦圍繞動畫這裡。 這是我的基本情況:

 _________
|Parent   |
|         |
|         |
|  _____  |  _____
| |A    | | |B    |
| |_____| | |_____|
|_________|

其中Parent是父視圖, AB都是UIView實例。 我選擇製作AB UIView ,因為據我所知,圖層不能接收用戶交互。 我想要做的動畫非常簡單:我只想讓A在屏幕左側滑動,而B從右側滑動。

我嘗試了以下內容:

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

但該屬性立即更新,沒有動畫。

使用CABasicAnimation可以讓我的工作沒有太多麻煩,但是我想學習使用隱式動畫來處理這種場景,所以我可以在未來更快地進行原型設計。 這篇文章似乎暗示UIView不能執行隱式動畫(至少默認)。

我的問題:

  1. 有沒有一種方法隱式地在UIView的圖層上動畫屬性? 怎麼樣?
  2. 如果沒有,是否有更好的/規範的方式來做到這一點,這是不同於我的方法?




core-animation