更改UIViewAnimationCurve的原点

时间:2014-08-21 01:14:51

标签: ios uiviewanimation-curve

我是Xcode的新手,我找不到任何相关内容。我想使用UIViewAnimationCurve将UIImage从视图的左下角移动到左上角。我知道iPhone的起源是左上角。如何将其更改为左下角,以便动画可以在右上角结束?这就是我到目前为止所做的:

[UIView animateWithDuration:2.0
                      delay:2
                    options:UIViewAnimationCurveLinear | UIViewAnimationOptionAllowUserInteraction
                 animations:^{[MyImage setFrame:CGRectMake(0,200, 82, 78)]; }
                 completion:^(BOOL finished) {
                     [MyImage setFrame:CGRectMake(200,0, 82, 78)];
                 }];

1 个答案:

答案 0 :(得分:0)

您希望(a)在左下角建立视图的原点,然后(b)设置过渡到左上角的动画。

//  step a
[MyImage setFrame:CGRectMake(0, 200, 82, 78)];

[UIView animateWithDuration:2.0
                      delay:2
                    options:UIViewAnimationCurveLinear | UIViewAnimationOptionAllowUserInteraction
                 animations:^{
                   //  step b
                   [MyImage setFrame:CGRectMake(0, 0, 82, 78)];
                  }
                 completion:nil];

视图的帧将在动画期间设置,也不需要在完成块中完成该工作。

注意:你的短语“我想使用UIViewAnimationCurve ......”是非常误导的。一个更常见的方式来表达你的请求将是“我想使用UIView动画......”。要非常清楚,UIViewAnimationCurve枚举是指动画动画的速率,从开始到结束; UIViewAnimationCurveLinear表示动画将以平滑的线性速率从头到尾进行。