我想调整UITableView单元格的字体大小。 如果它们包含太长的标题,则textLabel将被拆分。
那么,例如,当标签长度超过20个字符时,如何调整字体大小? 我想:
NSString *cellText = cell.textLabel.text;
if (cellText.length > 20){
cellText = [UIFont systemFontOfSize:11.0];
}
但是有一些错误,因为它会崩溃。
有什么想法吗?
答案 0 :(得分:1)
cellText
是NSString
,您设置了UIFont
到NSString
指针,您应该将Font设置为textLabel
,如下所示:
NSString *cellText = cell.textLabel.text;
if (cellText.length > 20){
cell.textLabel.font = [UIFont systemFontOfSize:11.0];
}
如果不是问题,请发布崩溃日志。
答案 1 :(得分:0)
你不需要代码!
检查员:
答案 2 :(得分:0)
NSString *cellText = cell.textLabel.text;
UILabel *cellLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 2, 300, 20)];
cellLabel.text =cellText;
cellLabel.adjustsFontSizeToFitWidth = NO;
cellLabel.numberOfLines = 0;
[cellLabel setBackgroundColor:[UIColor clearColor]];
[cellLabel setFont:[UIFont fontWithName:@"Arial" size:14.0f]];
cellLabel.textAlignment = UITextAlignmentLeft;
[cell.contentView addSubview:cellLabel];
[cellLabel release];