UIImageViews在标签更改时跳转 - Xcode

时间:2014-12-27 18:16:09

标签: objective-c xcode uiimageview uilabel

我的UIImageViews掉落在屏幕上并在游戏中回到顶部。我在屏幕底部还有另外两个图像视图,它们的图像经常变化。当这两个底部图像发生变化时,下降的UIImageViews会在屏幕上跳转到游戏应用程序打开时的原始位置,然后再次下降。当分数标签改变时,会发生同样的事情。

我对几乎所有事情都有约束,所以我认为它可能与它有关但我不知道为什么。

非常感谢您的帮助

1 个答案:

答案 0 :(得分:0)

好的,所以我确定你知道布局限制和NSLayoutConstraint类。 (如果不是read this)。基本上Apple使用IB中表示的这些类来定位和调整子视图e.t.c。

因此,您需要调整要移动的任何视图的布局约束。要为UIView设置动画,它曾经是一个更改frame属性然后让superview重绘它的子视图的情况;但是,现在您需要更改视图布局约束的constant属性,然后在超级视图上调用layoutIfNeeded,如下所示:

myImageViewConstraint.constant += 100;
[UIView animateWithDuration:1 animations:^{
    [superview layoutIfNeeded];
}];

然后因为您更改了约束,视图不会跳转。

注意:您应该在跳过Stack Overflow之前对此进行研究,因为Apple Developer Resources中可以使用它。