2016-07-25 33 views
-3

我刚开始很快,我正面临一个简单的问题: 我无法将UIButton修改为适用于所有iPhone尺寸的故事板中的图像。我使用iPhone 6s Plus大小的故事板,因为我有一个。当我运行我的测试时,一切都可以,但是当我用iPhone 5模拟器运行我的测试时,没有什么是好的。 此图显示按钮位于iPhone 6上的好位置,但不适用于其他尺寸。 我尝试了很多不同的约束,但似乎没有任何工作。如何将UIButton的位置适应所有iPhone尺寸的背景图像?

总结:如何设置约束定位在背景图像中的圆圈的按钮(如图中linked drawing),不管电话尺寸的?

Button Not Aligned With Circle

+0

我想你是问,马特,**如何设置约束来将您的按钮放置在背景中的圆上,如链接的绘图所示,而不管手机大小为**。如果这是正确的,请编辑您的问题说,因此,版主会解决您的问题。 (我可以编辑它,如果你愿意,但我想确保我没有误解。) – leanne

+0

是的。对不起 –

回答

0

试试你的限制设置为一个百分比。

  • 控制 - 从您的按钮拖动到您的视图。
  • 按住Shift键并单击以选择水平间距和垂直间距。
  • 单击添加约束。 现在,相对于超级视图,您应该有2个按钮约束。

  • 在每个约束的属性检查器中,检查以确保按钮的X和Y相对于超级视图的尾端和底部。例如:

第一项:Button.Center X
关系:平等
第二项:Superview.Trailing

第一项:Button.CenterŸ
关系:平等
第二个项目:Superview.Bottom

  • 在每个约束中,将常量值设置为零。

  • 然后,将乘数值设置为百分比或分数。

例如,如果你希望按钮处于中间点,而不管设备的大小,输入的50%(或1/2或0.5乘法器如果它不会采取的百分比值 - 有时它不会接受一个值的版本,但它会接受另一个相同的表达)。

百分比乘以超视图的值。超视图的后沿是最大X值,超视图的底边是最大Y值。

您的按钮似乎在视图下方约三分之一处,并且约为左侧视图的四分之一。因此,您可以尝试将Button.Center X乘数设置为25%或1/4或.25,将Y乘数设置为33%或1/3或。33

还要注意,在约束的第二项下拉菜单下,您可以选择该值是否相对于边距。如果未选中,乘数将使用超级视图的全宽或高度。选择相对于边距使用超视图的宽度减去任何尾部或底部边距。这可能会减少你的百分比。在玩你的价值观时,我建议将相对边界保留为未选中。

下面是最终约束值图片: Button.Center X Equal PNG.Trailing, Multiplier 26% Button.Center Y Equal PNG.Bottom, Multiplier 46%

注意,按钮似乎并不为中心,直到你看一下预览。运行不同大小手机的模拟器给了我与预览中显示的结果相同的结果:按钮正确地居中在圆圈中。

+0

非常感谢您的回答! 我试过这个。现在这里是我的结果: https://1drv.ms/i/s!AvPAYA1fjd14gZhHIxWcsRmISol2Rw 也许我犯了错误? –

+0

第二项说“iPhone 6 Plus.Leading”,@Matt Jacquet。尝试将其更改为“iPhone 6 Plus.Trailing”。 – leanne

+0

是否这样? https://1drv.ms/i/s!AvPAYA1fjd14gZhJ21pivaClzBqL8w –