答案 0 :(得分:4)
所有iOS设备包含4&#34;,4.7&#34;和5.5&#34;屏幕(自iPhone 5以来的所有iPhone和自第5代以来的所有iPod)具有相同的屏幕宽高比,16:9,因此如果这些是目标设备,则可以使用故事板中的约束而无需代码。< / p>
你发布了iPhone 6尺寸的屏幕截图。 (专业提示:在模拟器中按⌘S将屏幕截图保存到桌面,这样您就不必尝试手动裁剪。)在这张照片中,您可以“将按钮的下边缘放在屏幕下边缘上方约300像素= 150点处。 iPhone 6的屏幕高667点。
所以第一步是在你的根视图中添加一个“spacer”视图。将其背景颜色设置为您可以看到的颜色,并将其隐藏。 (隐藏视图仍然参与布局。)将垫片固定在根视图的左下边缘。使它宽20点。宽度并不重要。在spacer和根视图之间创建一个等高的约束。然后编辑等高约束。将乘数设置为150:667
(使用该字符串,Xcode将为您进行除法)。这是它应该是什么样子:
现在约束按钮的下边缘等于垫片的上边缘:
我们可以使用“辅助编辑器”中的“预览”模式查看按钮在不同屏幕尺寸上的放置方式:
根据要求,按钮“始终位于模糊黄线的顶部”。
如果您还想支持3.5英寸屏幕,并将背景图像视图的模式设置为“Aspect Fit”(这将在图像的两侧留下空白区域)或“Scale To Fill”(这将会挤压)图像有点),然后这个布局将按原样运行。
如果您还想支持3.5英寸屏幕并且使用不同裁剪的背景图像(例如,您使用模式“Aspect Fill”),则需要在代码中替换间隔器的高度约束。设备的屏幕尺寸。