具有自定义背景的UIButton失去了标题

时间:2012-05-15 08:54:16

标签: uibutton

我试图创建一个自定义按钮,但在设置图像后,我注意到标题消失了,它认为这是因为我在按钮上添加了一个图像,它与标题重叠。

UIImage *pickerBg = [UIImage imageNamed:@"btn_picker.png"];
UIImage *pickerBg_highlighted = [UIImage imageNamed:@"btn_picker_highlighted.png"];

[projectBtn setImage:pickerBg forState:UIControlStateNormal];
[projectBtn setImage:pickerBg_highlighted forState:UIControlStateHighlighted];

还有其他方法可以解决这个问题吗?

4 个答案:

答案 0 :(得分:4)

使用setBackgroundImage,而不是setImage

答案 1 :(得分:1)

UIImage *pickerBg = [UIImage imageNamed:@"btn_picker.png"];
UIImage *pickerBg_highlighted = [UIImage imageNamed:@"btn_picker_highlighted.png"];
[projectBtn setBackgroundImage:pickerBg forState:UIControlStateNormal];
[projectBtn setBackgroundImage:pickerBg_highlighted forState:UIControlStateHighlighted];
[projectBtn setTitle:@"aTitle" forState:UIControlStateNormal];

使用此选项设置带标题的图像。

答案 2 :(得分:0)

使用您需要的标题创建一个UILabel,然后将其作为子视图添加到您的UIButton。

答案 3 :(得分:0)

当你创建一个UIButton时,使用setImage设置ButtonImage会改变标题的位置,titleText和图像都处于同一级别,titleText位于图像的后面,所以你可以setBackImage,图像将在titleText后面,但是,图像会像按钮一样紧张。