我并不真正理解约束,并尝试过在线发现的许多不同建议。他们似乎所做的就是把所有事情都叠在一起,或者什么也不做。
我有以下IPad应用程序,但我希望它适用于任何大小的设备,主要是iPod touch。
该页面只是两个按钮,无论它们在哪个屏幕上,我都希望保持不变。
对此有任何帮助表示赞赏。
答案 0 :(得分:1)
考虑不会因屏幕尺寸不同而改变的参考点会有所帮助。有时你想要的东西,比如左上角,所以你只需要对顶部和左边进行约束。
我会给你两个建议
对于你的情况,似乎你可能想要在centerY
之外做约束,因为你希望它们尽管屏幕尺寸在中间。
所以我会对“在容器中垂直居中”进行约束,然后点击约束并将其值调整为负值或正值,这样它总是高于或低于centerY
的X像素。
现在这还不够。它知道它的Y位置,但它不知道它的高度,宽度或X位置。所以你需要添加足够的约束来满足这些限制。
一些例子:
X /宽度:每个按钮的前导和尾随两个约束或水平中心和固定宽度约束。 (再次注意固定的宽度约束,因为屏幕尺寸可能会改变,有时它也是你想要的)
身高:在这种情况下,只是给它一个身高限制。
请注意,这意味着无论屏幕尺寸如何,它们之间的间隙总是相同(并且可能与其他边缘的间隙不同)。
使用容器视图,堆栈视图(填充,等间距,垂直对齐,间隙的间距值)或普通视图。 您可以根据所需按钮之间的高度和间距使视图成为固定高度。然后简单地将该容器视图水平和垂直地置于超视图上。
当然还有其他方法(例如使用具有相同高度限制的缓冲视图。所以你在顶部有一个不可见的视图,在它们之间有一个视图,在底部有一个视图。你给出了相同的高度限制并对齐围绕它们的不可见视图边缘的按钮。只要你给按钮一个固定的高度,这将适用于垂直约束)但我认为这两个可能是最好的。