2013-04-08 52 views
0

我有一个UILabel,我放置在故事板屏幕的左上角。我禁用了“Autolayout”,它在iPhone 5屏幕上工作得很好。当我在iPhone 4这样的小屏幕上尝试它们时,问题就出现了。然后将标签放在右下角。在这个问题之后,我尝试以编程方式'修复'视图控制器的“viewDidLoad”方法中的位置,但它仍然处于移动位置,问题仍然存在。UILabel在2种不同屏幕尺寸的不同位置

我一直在挠我的脑袋有一段时间!

任何帮助,将不胜感激。

+0

发布一些代码会很好。 – mskw 2013-04-08 19:36:08

回答

2

我建议你重新打开自动布局。如果你得到了正确的约束,这种情况(两种不同的屏幕尺寸)就是,正好是自动布局真的很适合。苹果在iPhone 5屏幕出现在场景中的时候,将OS X的自动布局迁移到了iOS的原因有很好的理由!

+0

我试过使用自动布局,但对我来说,它似乎比帮助更麻烦。我似乎无法改写自动完成的约束,这完全搞砸了视图 – 2013-04-12 16:32:47

+1

嗯,这是一门艺术。 :)如果需要的话,你必须在你想要改变的限制条件下制作插座。或者你必须学会​​操纵笔尖/故事板制约的方式。我的这本书http://www.apeth.com/iOSBook/ch14.html#_autolayout和这一个http://www.apeth.com/iOSBook/ch14.html#_constraints_in_the_nib可能会帮助你。 – matt 2013-04-12 16:43:48

0

修复它进入公用事业面板,单击该选项卡“显示尺寸检查”,并更改自动调整大小。然后将您的组件拖放到故事板的视图中,以便它保留在“边框”之一中。如果你不需要支持较老的iOS版本,我建议你通过自动布局来找出正确的方法。