答案 0 :(得分:14)
查看UIButton的titleEdgeInsets
属性。
@property(nonatomic) UIEdgeInsets titleEdgeInsets
使用以下方法同时使用UIButton。
[myButton setImage: [UIImage imageNamed:@"settingImage.png"] forState:UIControlStateNormal];
[myButton setTitleEdgeInsets:UIEdgeInsetsMake(100.0, -100.0, 10.0, 15.0)];
[myButton setTitle:@"settings" forState:UIControlStateNormal];
答案 1 :(得分:0)
取出按钮。
UIImageView *img1=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"blue-thumb.jpg"]];
CGRect rect1=CGRectMake(0,0,20,30);
[img1 setFrame:rect1];
[btn1 addSubview:img1];
您也可以使用它设置Label。
答案 2 :(得分:0)
我发现最简单的方法是制作一个宽度为(左图+文字宽+左图)的png文件,但只包含左设置图像。
然后将其用作按钮的背景。
文本来自按钮本身,因此您可以轻松更改文本而无需更改图像。如果你现在将文本居中,那么左边的图像和旁边的文字就会看起来很完美。
代码如下:
[myBtn setTitle: @"settings" forState:UIControlStateNormal]
[myBtn setBackgroundImage: [UIImage imageNamed:@"myBtn.png"] forState:UIControlStateNormal];
如果您计划将其用于不同的语言,它也将与本地化兼容。