0

我有一个非常简单的情况:在一个视图中,我有一个 UIImageView 和一个 UILabel。在某个时刻,我想更改标签的位置,并以相同的方法更改 uiimageview 的图像。

self.myLabel.center = CGPointMake(158, 230);
self.myImageView.image = [UIImage imageNamed:@"anotherImage.png"];

但是这段代码只会改变图像,不会移动标签。如果我注释掉第二行并运行代码,那么标签将改变位置。

有人知道为什么不工作吗?或者这个问题的有效解决方法?

4

1 回答 1

3

我刚刚测试了上面的代码,它工作正常。当键盘弹出时,标签移动并且图像变化良好。您程序中的问题必须很简单,但不是上面的代码。

现在我们已经有了 iOS6,每当我看到有关frame通过代码完成坐标更改似乎无法正常运行的帖子时,我立即怀疑自动布局设置:

在此处输入图像描述

确保取消选中该选项,否则基于约束的逻辑将覆盖任何通过代码手动调整设置的尝试。(或者,如果您想使用 Autolayout,而不是设置框架坐标,则以编程方式调整您的约束以获得所需的结果。)

无论如何,听起来那是你的问题。很高兴你解决了!

于 2012-10-17T04:56:52.797 回答