如何使用属性字符串设置minimumfont size或minimumscalfactor(ios7)?

时间:2013-10-10 10:24:20

标签: ios nsattributedstring

如何使用属性字符串设置minimumfont size或minimumscalfactor(ios7)。

NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
   paragraphStyle.lineBreakMode = self.lineBreakMode;
    paragraphStyle.alignment = self.textAlignment;

    NSDictionary *dictionary = @{ NSFontAttributeName: self.font,
                                  NSParagraphStyleAttributeName: paragraphStyle,
                                  NSForegroundColorAttributeName:self.textColor};


    [self.formattedText drawAtPoint:vLineRect.origin withAttributes:dictionary];

请建议如何在属性字符串中设置minimumfont大小?

1 个答案:

答案 0 :(得分:3)

要替换minimumFontSize,您需要在iOS 7中使用minimumScaleFactor,如下所示:

[_myLabel setMinimumScaleFactor:10.0/FONT]];

10.0将是最小尺寸

并使用您的自定义字体替换FONT,其大小为[UIFont fontWithName:@"nameOfFont" size:15.0f],字体名称和所需大小。

因此,对于iOS 6,它将与:

相同
[_myLabel setMinimumFontSize:10.0];

Apple文档here

您可以添加测试以使用iOS 6中的minimumFontSize和iOS 7上的minimumScaleFactor

if ([_myLabel respondsToSelector:@selector(setMinimumScaleFactor:)])
    [_myLabel setMinimumScaleFactor:10.0/FONT]];
else
    [_myLabel setMinimumFontSize:10.0];