UIView动画无法在iOS 7中运行

时间:2015-02-27 11:22:36

标签: ios animation ios7 core-animation

以下代码在iOS 8中工作,而不是在iOS 7中工作。

 [UIView animateWithDuration:0.5
                          delay:0.0
                        options: UIViewAnimationOptionCurveEaseIn
                     animations:^{
                         self.toolsview.frame = CGRectMake(0, self.view.frame.size.height-68, self.view.frame.size.width, 68);
                     }
                     completion:^(BOOL finished){   }];

即使此方法与iOS 4兼容,但这在iOS 7中无效。 最初我已将视图框设置为

self.toolsview.frame = CGRectMake(0, self.view.frame.size.height, self.view.frame.size.width, 68);

1 个答案:

答案 0 :(得分:1)

正如Kampai在评论中所说,你无法使用AutoLayout有效地操纵视图的框架。 AutoLayout会强制您将查看设置恢复为由其约束定义的设置。

相反,设置高度,宽度,左边缘和上边缘约束(或任何你需要的)将它们作为出口连接,并操纵它们的常量值,然后从动画块内部调用layoutIfNeeded。