我有一个非常简单的情况:在视图中我有一个UIImageView和一个UILabel。在某个时刻,我想改变标签的位置,并以相同的方法来改变uiimageview的图像。
self.myLabel.center = CGPointMake(158, 230);
self.myImageView.image = [UIImage imageNamed:@"anotherImage.png"];
但是此代码只会更改图像,不会移动标签。如果我注释掉第二行并运行代码,那么标签将改变位置。
任何人都知道为什么不工作?或者这个问题的有效解决方法?
答案 0 :(得分:3)
我刚刚测试了上面的代码,它运行正常。当键盘弹出时,标签移动并且图像变化正常。程序中的问题必须简单,但不是上面的代码。
现在我们已经有了iOS6,每当我看到有关frame
坐标变化的帖子在通过代码完成时看起来不正常时,我立即怀疑Autolayout设置:
确保取消选中,因为否则基于约束的逻辑将覆盖通过代码手动调整设置的任何尝试。 (或者,如果您想使用Autolayout,而不是设置框架坐标,请以编程方式调整约束以获得所需的结果。)
无论如何,这听起来像你问题。很高兴你解决了它!