我需要在我的视图中添加一个句子。但是这句话很大。因此,我想将其放入带有几行的已定义CGRect中,并更改字体大小,以便所有句子在此CGRect中都是可见的。并且字体大小应尽可能大。

这是我正在使用的代码:

NSAttributedString *sentence = [[NSAttributedString alloc] initWithString:@"The sentence with some words" attributes:@{NSFontAttributeName: wordsFont,NSBackgroundColorAttributeName:[UIColor yellowColor]}];


CGRect sentenceBounds;
sentenceBounds.size = [sentence size];
CGSize neededSize = CGSizeMake(MAX_WIDTH, MAX_HAIGHT);
sentenceBounds.size = neededSize;


sentenceBounds.origin = CGPointMake(0, 0);

[sentence drawInRect:sentenceBounds];

最佳答案

您要查找的所有功能都包含在UILabel中。您有不能仅仅使用它的原因吗?

UILabel *label = [UILabel new];
label.adjustsFontSizeToFitWidth = YES;
label.numberOfLines = 0;
label.attributedText = sentence;
label.frame = CGRectZero; //set desired frame here;
[self addSubview:label];

10-07 19:51
查看更多