如何以编程方式向视图添加多个标签而不必担心其Y位置?

时间:2013-01-09 05:26:15

标签: iphone ios cocoa-touch uiview uilabel

我有一个情况,我想在视图中添加一个带有复选按钮的用户名,看起来很简单:)...

问题是我可能有单个或多个用户,所以我需要通过代码添加它,我想添加所有名称,如梯子及其相应的检查按钮。

最好的方法是什么?

我尝试过为每个用户添加标签..添加时我想逐个设置其顶部位置以使其正确对齐..我是否必须像这样计算顶部?最简单的方法是......就像他们在Android中的表现一样(相对布局)。

感谢

3 个答案:

答案 0 :(得分:2)

您可以创建array usernames并使用以下代码。 这是测试代码供您参考。

NSMutableArray *arr = [[NSMutableArray alloc] init];
[arr addObject:@"1"];
[arr addObject:@"2"];
[arr addObject:@"3"];
[arr addObject:@"4"];
[arr addObject:@"15"];

现在循环:

for (int i = 0; i<[arr count]; i++) {

  UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 10*10*i, 100, 40)];
  label.text = [arr objectAtIndex:i]; //usernames from array
  [self.view addSubview:label];
}

答案 1 :(得分:1)

relativelayout的Objective-C等价物为Cocoa Auto Layout

答案 2 :(得分:0)

我会使用带有自定义单元格的UItableView。单元格包含您的输入字段。通过这种方式,您可以拥有任意数量的输入,并且它们将始终按照相同的方式排列,并且您不需要编写任何时髦的代码。您还可以免费获得滚动和内存管理。