Autolayout网格中的UIButtons

时间:2015-03-01 06:55:21

标签: ios autolayout

我无法让我的UIButtons在我的滚动视图中正确对齐。我已经尝试了对齐的基线,将每个基线与我的UIView调用的contentView等对齐,但没有任何效果。

基本上我有一个:

`UIView`

   `UIScrollView`   //320 x 708

      `UIVew`   //320 x 708 , called contentView

我有8个UIButtons尺寸140x140,它们按行对齐两行:

|---8 pts--| UIButton |---24 pts--|  UIButton |---8 pts--|
               _
               |
               |
              8 pts
               _

|---8 pts--| UIButton |---24 pts--|  UIButton |---8 pts--|

等,4行

2 个答案:

答案 0 :(得分:1)

将我的建议作为答案发布,因为它似乎可以解决问题:

相等的宽度+相等的高度+ 8px(或24px)的间距应该这样做,但不像固定的宽度&您可以同时设置所有高度约束,不要尝试一次为多个按钮设置相同的大小或间距约束。因为你只有8个,所以一个接一个地进行。

例如:第一个按钮的顶部和左侧间隔为8px到其超视图。第二个按钮与其超视图的顶部间距为8px,但与其超视图的间距为8px,与第一个按钮的左边距为24px。第一个和第二个按钮也应该具有相同的宽度约束设置。所有行的等等。

另请注意,在问题的第一个版本中,您可能会遇到与大小冲突:8 + 140 + 8 + 140 + 8 = 304px,与超级视图的320px宽度不同...如果您尝试接通电话一切都有约束,你发生冲突,所以关键是要为视图连接足够的约束以正确显示,但不要过多以避免产生有时很难解决的冲突......

答案 1 :(得分:0)

最终工作的是从所有按钮的宽高比移动到相等的宽度和高度!然后在左侧按钮(顶部,左侧和底部)设置3个约束,在右侧设置3个约束(顶部,左侧,底部和右侧)