如何在iPhone中设置特定按钮的背景颜色?
我用过:
btnName1 = [ColorfulButton buttonWithType:UIButtonTypeRoundedRect];
btnName1.frame=CGRectMake(45,146,220,40);
[btnName1 setTitle:@"Continue" forState:UIControlStateNormal];
[btnName1 setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[btnName1 setImage:[UIImage imageNamed:@"green.png"] forState:UIControlStateNormal];
UIImage *img =[UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:@"greenish" ofType:@"png"]];
UIImage *strechableImage = [img stretchableImageWithLeftCapWidth:12 topCapHeight:0];
[btnName1 setBackgroundImage:strechableImage forState:UIControlStateNormal];
[btnName1 setNeedsDisplay];
[InfoView addSubview:btnName1];
它在iPhone模拟器上正常工作,但在iPod上没有(iPod中没有显示颜色)。
答案 0 :(得分:5)
myButton.backgroundColor = [UIColor redColor];
或者你想要的任何颜色。此方法继承自UIView
。
请注意,这仅设置背景颜色......
如果您想更改按钮的外观:
[myButton setBackgroundImage:[UIImage imageNamed:@"MyImage.png"] forState:UIControlStateNormal];
您可以将状态更改为您喜欢的任何状态。
编辑:如果要从界面构建器添加按钮,请务必将按钮Type
更改为Custom
,然后更改image
。
答案 1 :(得分:3)
这就是我完成它的方式。
在.h文件中,将yourButton声明为IBOutlet。
@property (weak, nonatomic) IBOutlet UIButton *yourButton;
在要更改按钮颜色的.m文件中,使用
[yourButton setBackgroundColor:[UIColor blueColor]];
或
[yourButton setBackgroundColor:[UIColor colorWithRed:0.80 green:0.80 blue:0.80 alpha:1.0]];
要获得我需要的颜色,请使用this链接。
答案 2 :(得分:0)
我有一个解决方案,当代码是用viewdidload()编写的时候它正常工作,我用于uiview,这就是为什么它不起作用。