中心在UIView中动态对齐多个不同大小的UIButton

时间:2015-10-26 12:15:22

标签: ios objective-c uiview uibutton center-align

我有一个UIView,其中我想动态添加一些不同大小的'n'按钮,所以通常它们会线性添加。我可以一次对齐所有按钮吗?或者我是否需要计算来设置每个按钮的来源?

如果我必须进行计算,以下是我的想法:

算法

  1. 计算具有原点的框架并添加按钮。
  2. 左移前一个按钮到计算金额
  3. 重复
  4. 不同尺寸的换档按钮变得非常困难。

    如果有内置方法允许我居中对齐视图的所有子视图或者我应该做一些数学运算,请告诉我。

    我偶然发现了一些SOF链接,但很少有任何帮助

2 个答案:

答案 0 :(得分:1)

如果您希望这些按钮均匀分布并且在这种情况下与中心对齐,则可以使用以下堆栈溢出问题 other question

答案 1 :(得分:0)

此代码将遍历视图的所有子视图并设置x原点,以便子视图居中:

for (UIView *view in yourView.subviews) {
    CGRect newFrame = view.frame;
    newFrame.origin.x = (CGRectGetWidth(myUIView.frame)-CGRectGetWidth(newFrame))/2;
    view.frame = newFrame;
  }