Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 设置NSLayoutConstraints更改的动画(以及对更改的对象具有约束的对象)_Iphone_Ios_Uiview_Autolayout_Nslayoutconstraint - Fatal编程技术网

Iphone 设置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

我有一个UIImageView对象,它在触摸UIButton时打开和关闭屏幕,我通过更改它的NSLayoutConstraints来实现这一点。我已使用以下代码成功地为该“运动”设置动画:

    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?