以动画方式调整UIControl的大小

时间:2012-04-07 03:17:41

标签: ios

我创建了一个我想扩展/收缩的按钮。我找到了一种方法来获得x,y坐标以及宽度和高度。使用这些我调用CGRectMake函数来重绘按钮。我试图弄清楚如何以动画方式重绘。以下是我的尝试,但我几乎可以肯定有更好的方法来做到这一点。有什么意见吗?

   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 个答案:

答案 0 :(得分:2)

您需要知道的是目的地rect将是什么,然后您可以像这样制作动画

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

答案 1 :(得分:0)

没有。不要试图自己制作动画。

使用UIView动画。 Ray Wenderlich提供了一个很好的教程:http://www.raywenderlich.com/2454/how-to-use-uiview-animation-tutorial

但是说实话,你应该从入门的iOS编程书开始。你提出问题的方式让我觉得你还有很多需要学习的基础知识。