2015-06-29 43 views
0

我有我的ios7工程测量与特定的字体和大小string的大小下面的代码,崩溃时“sizeWithAttributes”使用

CGSize size = [someText sizeWithAttributes:@{NSFontAttributeName: [UIFont fontWithName:@"uthmani" size:23.0f]}]; 

,但它与下面的消息崩溃:

*终止应用程序由于未捕获的异常 'NSInvalidArgumentException',原因是:“* - [__ NSPlaceholderDictionary initWithObjects:forKeys:数:]:尝试从插入零对象objects [0]'

请帮助某人,谢谢。

+0

检查'的值[UIFont fontWithName:@ “uthmani” 尺寸:23.0f]'。 – Larme

+0

@Larme:检查...为什么它是'空'? –

+0

因为它似乎没有被正确添加到您的项目中,并且似乎是自定义字体。检查如何添加自定义字体。 – Larme

回答

1
CGSize maximumLabelSize = CGSizeMake(maxTextWidth, CGFLOAT_MAX); 
CGRect textRect = [str boundingRectWithSize:maximumLabelSize 
                 options:(NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading) 
                attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:messageTextSize]} 
                 context:nil]; 

CGSize messageSize = textRect.size; 

与这个希望尝试将是有益