在UIButton中显示图像

时间:2014-04-14 15:05:14

标签: ios objective-c image uibutton

为了解释这个问题,我对Objective-C和Xcode非常陌生。我现在只学习了一个星期左右,但我已经坚持了几天这个问题。我试图在UIButton中显示图像。我有3个可供选择,blue.png,purple.png和orange.png。无论我做什么或者我告诉Xcode使用什么图像,它都只显示蓝色图像。我完全删除了项目中的图像。我在iOS模拟器中“重置了内容和设置”。到底发生了什么?

the.h code

IBOutlet UIButton *h1;

the.m code

UIImage *buttonImage = [UIImage imageNamed:@"purple.png"];
[h1 setImage:buttonImage forState:UIControlStateNormal];
[self.view addSubview:h1];

无论我在引号中指定哪个图像,它总是使用blue.png,即使项目中不再存在图像。感谢大家的帮助!

2 个答案:

答案 0 :(得分:2)

您必须将blue.png设置为storyboard或xib文件中的背景图片。写NSLog(@"%@",buttonImage)以确保图像不是nil。确保输入正确的名称和扩展名purple.png

并使用

[h1 setBackgroundImage:buttonImage forState:UIControlStateNormal];

而不是setImage

答案 1 :(得分:1)

我认为首先你应该知道不同的button.image和button.backgroundImage。

  

使用Image(currentImage)字段,您可以指定图像   出现在按钮的内容中。如果按钮有标题,   此图像显示在其左侧,并以其他方式居中。

     

Background(currentBackgroundImage)字段允许您指定   图像显示在按钮内容后面并填充整个框架   按钮。

因此您可以根据需要使用setImage或setBackgroundImage。