更容易更改所有按钮的方法?

时间:2012-06-10 14:19:00

标签: iphone xcode uibutton background-color

我有10个UIButton我要更改背景颜色。

这就是我现在所拥有的:

b1.backgroundColor = [UIColor redColor];
b2.backgroundColor = [UIColor redColor];
b3.backgroundColor = [UIColor redColor];
b4.backgroundColor = [UIColor redColor];
b5.backgroundColor = [UIColor redColor];
b6.backgroundColor = [UIColor redColor];
b7.backgroundColor = [UIColor redColor];
b8.backgroundColor = [UIColor redColor];
b9.backgroundColor = [UIColor redColor];
b10.backgroundColor = [UIColor redColor];

我想知道是否还有另一种更简单的方法。我已经准备好了UIButton.backgroundColor = [UIColor redColor]但是没有用。

3 个答案:

答案 0 :(得分:3)

//Make an array of the buttons:
NSArray* buttons=[[NSArray alloc] initWithObjects:b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,nil];
//Loop through them
for(UIButton* b in buttons)
{
  b.backgroundColor = [UIColor redColor];
}

也可以在viewDidLoad中初始化数组。

答案 1 :(得分:2)

将按钮放在一个数组中:

NSArray* buttonArray=[[NSArray alloc] initWithObjects:b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,nil];

然后设置所有按钮的背景颜色:

[buttonArray makeObjectsPerformSelector:@selector(setBackgroundColor:) withObject:[UIColor redColor]];

答案 2 :(得分:0)

viewDidLoad中创建按钮数组。然后只需使用for循环来改变颜色。