既可以自动换行,又可以根据字符串的长度来调整字体的大小。
代码:
_label = [ [ UILabel alloc ] initWithFrame: CGRectMake( 20 , 280 , 280 , 100 ) ];
_label.textAlignment = UITextAlignmentCenter;
_label.adjustsFontSizeToFitWidth = YES;
_label.minimumFontSize = 2;
_label.alpha = 0.4;
[ self.view addSubview: _label ];
// 文字
message = [ [ NSString alloc ] init ];
message = [ resultSet.resultDictionary objectForKey: @"saying" ];
CGFloat actualFontSize;
int numberOfLine = message.length / 23;
if ( !numberOfLine )
{
numberOfLine = 1;
}
[ message sizeWithFont: [ UIFont systemFontOfSize: 18 ] minFontSize: 6 actualFontSize: &actualFontSize forWidth: 300*numberOfLine lineBreakMode: NSLineBreakByWordWrapping ];
_label.text = message;
[ _label setFont: [ UIFont systemFontOfSize: actualFontSize ] ];
_label.numberOfLines = numberOfLine + 1;