2010-03-23 154 views
1

我有(動態的幀上獲取的信息)被稱爲goalBarUIView正由根據稱爲目的地一個浮點值,增加幀的大小動畫:UIView的動畫iPhone

CGRect goalBarRect = CGRectMake(0, 0, destination, 29); 

[UIView beginAnimations:@"goal" context:nil]; 
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn]; 
[UIView setAnimationDuration:2.0f]; 

goalBar.frame = goalBarRect; 

[UIView commitAnimations]; 

動畫效果完美,矩形視圖在動畫過程中增加了寬度(從到目標的值)。

但是,我希望能夠在動畫發生時提取正在動畫的UIView的幀的值(即goalBar)。我的意思是我希望將動畫幀的寬度值放在單獨的UILabel中,以便用戶看到一個計數器,該計數器在動畫時提供了UIView的寬度。

任何有關如何做到這一點的幫助將受到感謝。

回答

0

觀察視圖的框架屬性如何。所以當它改變時你會得到回調。

查看鍵值觀察。

+0

該通知僅在動畫結束時給出。我真正需要的是在畫面擴大時(即在動畫期間)對畫面大小進行評論。 – Urizen 2010-03-23 14:57:20

0

我已經研究過這個問題,看起來它不可能在UIView動畫過程中得到正在動畫組件狀態的更新。

0

你可以做到這一點!如果你自己製作動畫,就是老式的方式。做一些像布拉德說的HERE,並將增加的變量寫入你的UILabel。信貸去布拉德。