以下代码在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);
答案 0 :(得分:1)
正如Kampai在评论中所说,你无法使用AutoLayout有效地操纵视图的框架。 AutoLayout会强制您将查看设置恢复为由其约束定义的设置。
相反,设置高度,宽度,左边缘和上边缘约束(或任何你需要的)将它们作为出口连接,并操纵它们的常量值,然后从动画块内部调用layoutIfNeeded。