Iphone 设置NSLayoutConstraints更改的动画(以及对更改的对象具有约束的对象)
我有一个UIImageView对象,它在触摸UIButton时打开和关闭屏幕,我通过更改它的NSLayoutConstraints来实现这一点。我已使用以下代码成功地为该“运动”设置动画:Iphone 设置NSLayoutConstraints更改的动画(以及对更改的对象具有约束的对象),iphone,ios,uiview,autolayout,nslayoutconstraint,Iphone,Ios,Uiview,Autolayout,Nslayoutconstraint,我有一个UIImageView对象,它在触摸UIButton时打开和关闭屏幕,我通过更改它的NSLayoutConstraints来实现这一点。我已使用以下代码成功地为该“运动”设置动画: self.addY.constant = 44.0f; [self.addingScreen setNeedsUpdateConstraints]; [UIView animateWithDuration:0.50f animations:^{ [self.adding
self.addY.constant = 44.0f;
[self.addingScreen setNeedsUpdateConstraints];
[UIView animateWithDuration:0.50f animations:^{
[self.addingScreen layoutIfNeeded];
}];
其中addY是屏幕顶部的约束,addingScreen是我的UIImageViewobject。我的问题是在addingScreen中有一系列具有垂直间距约束的对象,我希望它们能够随之滑动。发生的情况是,当UIImageView在我在代码中设置的0.5秒内缓慢跟随时,这些对象瞬间移动到它们的最终帧。如何使这些对象随UIImageView一起移动?感谢您的帮助:我想您应该调用layoutIfNeeded来查看其他要移动的视图。例如,尝试在animateWithDuration块中调用[self.view layoutifneed],我想您也应该对要移动的其他视图调用layoutifneed。例如,尝试在animateWithDuration块中调用[self.view layoutifneed]是否尝试在所有相关视图的最近公共父视图上调用layoutifneed?是否尝试在所有相关视图的最近公共父视图上调用layoutifneed?