2016-01-13 74 views
0

假设我有多个垂直和水平对齐的按钮,如屏幕截图所示。等距离会有三排。在第一行和第三行中,将有两个按钮具有相同的高度和宽度,而第二行中的按钮将水平对齐。我在故事板中设置了按钮图像和文本。控制对齐被设置为水平| vertical.Constraints for Button(View Transactions)是: top space, bottom space equals to:8(New Launches Button) leading and trailing space equals to:8(superview) and 8(Place Request Button) respectively, and equal width and height for all buttons。我可以从结果中想到的是,按钮的图像和文本之间的空间不会根据屏幕进行调整。只有按钮的高度和宽度得到调整。我希望按钮的字体应该随屏幕尺寸缩小,以便按钮的图像能够正确渲染。 iOS 8,9是我的项目的目标版本。我已通过最小化字体大小进行了检查,但图像大小仍未更改。如何根据屏幕大小调整图像和文本的大小(自动布局)

enter image description here

+0

你可以添加宽度和高度约束到图像视图 –

+0

没有图像视图mayank。 –

+0

删除底部空间限制和检查。否则在这种情况下,你可以使用滚动视图并将这些对象放在其中。然后根据设备大小增加滚动视图的内容大小。由于iPhone 3.7英寸很小,因此按钮尺寸被压缩。滚动视图运作良好..! – Vidhyanand

回答

0

最后,我让它以某种方式工作,虽然它不是真正的解决方案,但它可以是一种解决方法。正如我在问题中所说的问题是按钮的图像和标题之间的空间。所以我所做的是按钮,并在属性检查器设置left=0 and right=0 for the edge-title和控制对齐vertical|horizontal和我的观点看起来很好后,没有任何滚动视图。

enter image description here

0

我使用普通UIViews创建组做这种类型的东西。把尺寸问题分解成块是比较容易的。 对于你的例子,我会使用4个UIViews跨越屏幕的宽度,并与屏幕(包含它们的控制器的视图)成比例的高度。

在每个视图中,您可以放置​​更多的UIViews来包含图像/文本框对。将它们对齐到其父视图的顶部和底部,使其纵横比为1:1,并分别左右对齐。 (你也可以使用比例宽度,如果你不想让矩形为正方形,但你需要方形UIViews来管理你的图像

在每个方块(方形UIViews)中,放置你的标签在底部左侧,右侧和底部对齐到包含UIView(留出高度未指定,以允许自动大小工作)。图像应该是1:1纵横比,水平居中在容器中,顶部/底部包含视图和文本。

在你的需求中可能有更多的相对尺寸问题,但我认为你得到的总体思路是:UIViews内的UIViews内的UIViews使得相对尺寸(比例/高宽比/中心)比使用固定边对齐距离更容易。