2014-01-31 74 views
0

我试图将我的标签大小设置为动态,但是此当前方法已弃用。我知道,正确的方法是:使用boundingRectWithSize创建动态标签:options:attributes:context:

boundingRectWithSize:options:attributes:context: 

这确实没有与断行模式沿修改字体大小做的伎俩。

CGSize expectedLabelSize; 
expectedLabelSize = [textLabel.text sizeWithFont:[UIFont fontWithName:@"Ubuntu-Bold" size:14] constrainedToSize:maximumLabelSize 
             lineBreakMode:NSLineBreakByWordWrapping]; 

是否有应该用来改变我的标签属性的另一种方法是什么?

回答

1

刚刚尝试这个..

NSDictionary *attributesDictionary = [NSDictionary dictionaryWithObjectsAndKeys:font, NSFontAttributeName,nil]; 
CGSize labelContraints    = CGSizeMake(width, 105.0);//Here I set maximum height as 105 for maximum of 5 lines. 
NSStringDrawingContext *context  = [[NSStringDrawingContext alloc] init]; 
CGRect labelRect     = [str boundingRectWithSize:labelContraints 
    options:NSStringDrawingUsesLineFragmentOrigin attributes:attributesDictionary 
context:context]; 

注:将工作IOS7+