创建一个button设置背景图片,然后加一个label在button上,设置label的text的字体大小,不起作用,请问怎么修改?代码如下
returnButton = [UIButton buttonWithType:UIButtonTypeCustom];
returnButton.frame = CGRectMake(10, 9, 50, 28);
[returnButton addTarget:self action:@selector(back) forControlEvents:UIControlEventTouchUpInside];
[returnButton setImage:[UIImage imageNamed:@"US MEAT_buttons.png"] forState:UIControlStateNormal];
[returnButton setImage:[UIImage imageNamed:@""] forState:UIControlStateHighlighted];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(8, 2, 50, 20)];
label.backgroundColor = [UIColor clearColor];
label.textColor = [UIColor whiteColor];
label.font = [UIFont fontWithName:@"STHeiti-Medium.ttc" size:10];
label.text = @"返回";
[returnButton addSubview:label];
[label release];
可能是你的自定义字体没设置好
解决步骤:
1.添加字体文件到源文件中
2.编辑info.plist:添加一条新条目 Fonts provided by application.
3.在每个文件中,加入文件名到这个数组中
label.font = [UIFont fontWithName:@"STHeiti-Medium" size:10];
比如我添加字体 DejaVu Sans Mono
应该是自定义字体的问题。
IOS4+版本中设置自定义字体方法:添加字体文件(比如STHeiti-Medium.ttc)到工程中。打开Info.plist文件,创建命名为UIAppFont的key,设为数组,然后将字体的文件名作为一个key 值添加上,
<key>UIAppFonts</key>
<array>
<string>STHeiti-Medium.ttc</string>
</array>
然后在应用中使用时调用:
[UIFont fontWithName:@"STHeiti-Medium" size:64.0]