2012-04-07 58 views
0

我已經創建了一個我想展開/收縮的按鈕。我找到了一種獲得x,y座標以及寬度和高度的方法。使用這些我調用CGRectMake函數重新繪製按鈕。我想弄清楚如何以動畫的方式重繪。以下是我的嘗試,但我幾乎可以肯定有更好的方法來做到這一點。任何意見?以動畫的方式調整UIControl的大小

pointX = navigateBtn.frame.origin.x; 
    pointY = navigateBtn.frame.origin.y; 
    height = CGRectGetHeight(navigateBtn.frame); 
    width = CGRectGetWidth(navigateBtn.frame); 
    for (int i=1;i<=800000;i++) { 
     int k=i/100000; 
     navigateBtn.frame=CGRectMake(pointX, pointY, width, height*k); 
    } 

在此先感謝。

回答

2

所有你需要知道什麼是目標rect會,然後就可以像動畫這樣

[UIView animateWithDuration:0.25f 
       animations:^{ 
        navigateBtn.frame = endFrame; 
       }]; 
+0

太好了!謝謝..它工作。 – user1306828 2012-04-07 06:21:06