1

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

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

4 回答 4

4

使用 setBackgroundImage,而不是 setImage

于 2012-05-24T09:58:50.537 回答
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];

使用它来设置带有标题的图像。

于 2013-04-19T13:58:40.140 回答
0

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

于 2012-05-15T09:12:43.960 回答
0

创建UIButton时,使用setImage设置ButtonImage会改变title的位置,titleText和image在同一层,titleText在image后面,所以可以setBackImage,image会在titleText后面,但是,图像将作为按钮紧张。

于 2014-08-25T11:28:48.137 回答