我有3个不同的按钮,我使用for循环在我的UIView中显示它。问题是,只显示了一个按钮。
float yButton = 50.0;
for (int i = 0; i < 2; i++) {
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(80.0, yButton + 70.0, 160.0, 40.0);
[button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchDown];
[self.view addSubview:button];
[button setTag:i];
}
另外,如何将按钮标题设置为A,B和C(因为只有3个按钮)。
答案 0 :(得分:3)
您为所有按钮提供相同的框架。您需要增加y
原点。
在循环结束时,执行以下操作:
yButton += 50; // pick a value that meets your needs.
要设置标题,请创建一个包含三个标题的数组:
NSArray *titles = @[ @"A", @"B", @"C" ];
然后在循环中:
[button setTitle:titles[i] forState:UIControlStateNormal];
答案 1 :(得分:2)
您为所有按钮指定相同的框架:
telcoButton.frame = CGRectMake(80.0, yButton + 70.0, 160.0, 40.0);
你可能想这样做:
telcoButton.frame = CGRectMake(80.0, (yButton * i) + 70.0, 160.0, 40.0);