动画不适用于UIImageView

时间:2014-08-22 22:27:09

标签: ios xcode animation uiimageview

所以我在这里有这个代码:

    [UIView animateWithDuration:1 delay:1.0 options: UIViewAnimationCurveEaseInOut
                 animations:^{[obstacle setFrame:CGRectMake(100, 100, 60, 60)];}
                 completion:^(BOOL finished){}];

此代码不执行任何操作,也不会抛出任何错误。障碍物是一个链接到我的一个图像的ImageView。

另外,UIViewAnimationCurveEaseInOut在XCode中给我一个黄色警告。

如何修复代码以使此动画正常工作?

1 个答案:

答案 0 :(得分:0)

使用UIViewAnimationOptionCurveEaseInOut而非UIViewAnimationCurveEaseInOut。第一个是动画选项,而你正在使用的是第二个,是一个动画曲线。

[UIView animateWithDuration:1
                      delay:1.0
                    options:UIViewAnimationOptionCurveEaseInOut
                 animations:^{

                     [obstacle setFrame:CGRectMake(100, 100, 60, 60)];

                 }completion:nil];

不要混淆ENUM。在核心,它们都是NSInteger s(一个是签名的,其​​他是无符号的),但两者都是可接受的,因此编译器不会给你一个警告/错误。

您可以通过在UIInterfaceOrientationMaskPortrait块中传递options来测试这一点,编译器仍然不会给出任何错误/警告,因为这也是NSUInteger