设置backgroundimage时,按钮变为蓝色

时间:2013-12-13 09:41:31

标签: ios iphone objective-c cocoa-touch

我有几个按钮,当我将图片设置为背景时,图标变为蓝色,例如:

[self.button setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];

所有照片都是黑白照片,所以当我将它们设置为背景图像时,我不明白为什么它们会改变颜色。

2 个答案:

答案 0 :(得分:11)

确保将按钮初始化为“UIButtonTypeCustom”

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

然后,如果您希望整个按钮成为图像,请使用:

[button setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];

...或者,如果您想将图像作为背景,并仍然看到“标题”,则使用:

 [button setBackgroundImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];

答案 1 :(得分:0)

首先做

self.button = [UIButton buttonWithType:UIButtonTypeCustom];

然后设置图像

[self.button setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];