2012-05-15 104 views
0

我會盡可能地簡化問題。iOS動畫塊:忽略動畫命令

我有一個動畫塊來動畫兩個UIViewImages。

我走的UIImageViews的矩形我開始前:

更改:origin.x + = 40兩個

在動畫塊,我設置與改性這兩個的UIImage視圖的幀矩形。

它的工作原理。

現在,這是一件事。對於一個的矩形,我也會改變size.width- = 20,使它縮小一點寬度。

結果:縮小和移動發生,但第二個UIImage視圖不再移動。就好像動畫元素的寬度/高度,可以取消動畫塊中的所有其他動畫。

我不明白爲什麼。我已經在這兩天了無濟於事。有沒有人遇到過這樣的事情?我在iOS 5.1 Xcode 4.3.2上

+2

請問您可以顯示代碼嗎? –

+0

在我看來,你的代碼有問題。嘗試在你的動畫塊中添加一個斷點,看看rects如何改變。 – ZhangChn

回答

1

儘管可以對框架屬性進行動畫製作,但不建議爲視圖設置動畫效果。

相反,我建議你應用一個CGAffineTransform來轉換UIImageView的屬性。

這裏是文檔鏈接:https://developer.apple.com/library/mac/#documentation/graphicsimaging/reference/CGAffineTransform/Reference/reference.html

在你的情況,你會使用縮放和平移變換你的形象的看法。請記住,如果您想要應用兩個轉換,您必須先將它們合併爲一個轉換。

+0

優秀!這正是我正在尋找的。我用CGAffineTransform定義了所有的變換,當動畫完成時,所有變換都完美地結合在一起。移動,旋轉,縮放等完美! – JasonGenX