我通过动态长度文本计算 UILabel 的大小(这里只有高度很重要)。我绘制了标签图层的边框以可视化标签的框架。我有时会在标签文本的上方和下方看到“填充”,但并非总是如此。我不想要填充。我怀疑它与属性字符串有关,因为我从未在“正常”字符串标签中遇到过这样的问题。
我看到了这个(注意第一行的填充):
我要这个:
相关代码:
-(void)setupQuestionView
{
[self.questionView setAttributedText:[self.allContents[_itemIndex] objectForKey:@"Question"]];
// new question view height
CGSize constraint = CGSizeMake(kCellWidth - kLeftMargin - kRightMargin, FLT_MAX);
CGSize size = [self.questionView.text sizeWithFont:[UIFont systemFontOfSize: kFontSize] constrainedToSize:constraint lineBreakMode:NSLineBreakByWordWrapping];
[self.questionView setFrame:CGRectMake(kRightMargin, kTopMargin, kCellWidth - kRightMargin * 2, size.height)];
[self.questionView.layer setBorderWidth:1.0f]; // debug
}