根据设备调整按钮宽度和高度

时间:2015-05-23 16:39:06

标签: ios swift

我正在尝试为我正在玩的应用创建一个键盘。键盘将是标准的四行,数字为0 - 1,十进制和+/-。没什么特别的。我试图让它只占用垂直屏幕空间的1/2。使用约束,我将左下方的按钮固定在屏幕的左下方,右下方的按钮固定在屏幕的右下方。我设置了左按钮的宽度和高度,然后在该按钮上使用了Aspect Ratio。在剩下的底部按钮上,我控制 - 向左拖动它旁边的按钮,然后选择“水平间距”,“中心Y”,“等宽”和“等高”,然后控制从上面的每个按钮拖动到下面的按钮,然后选择约束列表中的垂直间距,中心X,等宽和等高。我的想法是左下角按钮会根据所选设备进行调整,然后所有其他按钮都会根据此按钮进行调整。

显然,我错了。这些按钮很好地设置,它们保持在彼此的上方和旁边,没有任何空格,但它们不占据屏幕的一半。根据所选的设备,它们之间的空间比例或多或少。显然,我要么缺少某些东西,要么我完全接近这个错误的方式。

有关如何完成此任务的任何建议将不胜感激。我还在学习约束如何相互影响,但我认为我的想法很合理。使一个按钮调整到正确的大小(左下方按钮的宽高比),然后强制所有其他按钮保持相同的宽度,高度和距离。

1 个答案:

答案 0 :(得分:0)

左下角按钮不会调整其大小,因为你给它一个固定的宽度和高度。按钮不应在其上设置任何明确的宽度或高度。它们都应该设置为相同的大小,只要你有从左边缘到右边的约束,就应该设置它们的宽度。他们的高度也将根据宽高比限制来设定。

这将使按钮仅根据屏幕尺寸显示其大小,但它不会使它们成为屏幕高度的一半(只能用于具有特定宽高比的一个屏幕尺寸)。要使按钮占据屏幕垂直高度的一半,您可能希望将它们包含在该高度的视图中。但是,您在按钮的宽高比和屏幕的宽高比之间会有冲突。您可能需要放弃宽高比,或者不将按钮的右侧固定在屏幕的右侧,并使用宽高比使按钮全部适合屏幕。