0

我有一个 UIView,我想在其中动态添加一些不同大小的“n”按钮,所以通常它们会线性添加。我可以一次将所有按钮居中对齐吗?还是我必须计算来设置每个按钮的原点?

如果我必须进行计算,这是我想到的:

算法

  1. 计算带有原点的框架并添加一个按钮。
  2. 左移上一个按钮到计算的数量
  3. 重复

改变大小不同的按钮变得非常困难。

请让我知道是否有内置方法可以让我居中对齐视图的所有子视图,或者我应该做一些数学运算。

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

4

2 回答 2

1

如果您希望这些按钮均匀分布并在这种情况下居中对齐,您可以使用以下堆栈溢出问题 链接

于 2015-10-26T12:29:35.443 回答
0

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

for (UIView *view in yourView.subviews) {
    CGRect newFrame = view.frame;
    newFrame.origin.x = (CGRectGetWidth(myUIView.frame)-CGRectGetWidth(newFrame))/2;
    view.frame = newFrame;
  }
于 2015-10-26T12:37:54.173 回答