我按照教程制作了一个非常简单的游戏,但我遇到了一个我无法弄清楚的问题。当我将我的按钮放在编辑器屏幕上时,它看起来都很好,但是在模拟器中运行应用程序似乎搞砸了所有内容:
我正在运行最新版本的XCode。
答案 0 :(得分:6)
您需要使用autolayout在按钮上设置一些约束。如果您不使用autolayout,则布局仅使用原始X和Y值。所以在风景中,屏幕的高度是相同的,但宽度是不同的。您的按钮在两个屏幕上以相同的X值布局,因此一个将居中,一个不会。
查看this tutorial以获取有关布局限制的更多信息。
答案 1 :(得分:3)
我也遇到了很多麻烦。在Xcode 6(和Xcode 7)中,这就是你所做的。
使用Storyboard,而不是XIB文件。这应该是Xcode 6(和Xcode 7)中的默认值。
使用自动布局和大小类。这也应该是默认值。如果单击Project Navigator中的Main.storyboard,然后显示文件检查器,则可以确保选中这些:
在故事板上选择您的按钮。然后单击右下角的对齐按钮。选择“容器中的水平中心”和“容器中的垂直中心”。单击“添加2个约束”。
如果它没有完全居中,你可能还需要做一件事。单击对齐按钮右侧两个“解决自动布局问题”按钮。选择“选定视图”下的“更新帧”。
现在,当您运行应用程序时,无论您使用何种设备大小,它都应居中。
我从Creating the user interface – Auto layout学到了这一切。我建议你看看。