您的位置:首页 > 其它

关于sizeWithFont弃用问题

2015-10-16 15:23 218 查看
iOS 7.0之后sizeWithFont方法被弃用了





以下是代替方法:

iOS7新出了一个boudingRectWithSize:    

                           options:

                           attributes:

                           context方法代替

NSDictionary *attribute = @{NSFontAttributeName: [UIFont systemFontOfSize:13]};

抽取一个计算文本大小的方法 ,计算的时候可以直接调用

//计算文字的大小
- (CGSize)sizeWithText:(NSString *)text maxSize:(CGSize)maxSize fontSize:(CGFloat)fontSize
{
//    假设最大CGSize maxSize = CGSizeMake(MAXFLOAT, MAXFLOAT);
//计算文本的大小
CGSize nameSize = [text boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:fontSize]} context:nil].size;
return nameSize;
}


假如

 CGSize nameSize = [selfsizeWithText:self.makeupModel.productNamemaxSize:CGSizeMake(MAXFLOAT,MAXFLOAT)
 fontSize:13];

用法:

CGSize size = [@“相关NSString” boundingRectWithSize:CGSizeMake(100, 0) options:(3个option)
NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:attribute context:nil].size;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: