0
我有一个自定义的UITableViewCell,它具有动态高度的UILabel,具体取决于它的内容。在UITableViewCell中调整大小的UILabel显示错误
UILabel的大小调整完美,但UILabel没有正确显示它的内容。内容被包含到1或2行,即使它的框架中有空间。
但是如果我滚动UITableView并回到那些单元格,一切都会完美显示。
我希望单元格能够在没有滚动的情况下正确显示。
这里有一些截图从之前和滚动后:
下面是我用调整大小的UILabel代码:
CGSize expectedLabelSize = [titleText sizeWithFont:titleLabel.font
constrainedToSize:maximumLabelSize
lineBreakMode:titleLabel.lineBreakMode];
CGRect newFrame = titleLabel.frame;
newFrame.origin.y = 10;
newFrame.size.height = expectedLabelSize.height;
titleLabel.frame = newFrame;
accumulatedY += (expectedLabelSize.height + PADDING);
expectedLabelSize = [empresatext sizeWithFont:empresaLabel.font
constrainedToSize:maximumLabelSize
lineBreakMode:empresaLabel.lineBreakMode];
newFrame = empresaLabel.frame;
newFrame.size.height = expectedLabelSize.height;
newFrame.origin.y = accumulatedY;
empresaLabel.frame = newFrame;
accumulatedY += (expectedLabelSize.height + PADDING);
对于你应该使用'(的CGRect)boundingRectWithSize首发:(CGSize)大小选项:(NSStringDrawingOptions)选项方面:(NSStringDrawingContext *)context' as'sizeWithFont'已被弃用。此外,它也不会伤害,以确保您的UILabel的线设置为0. – JMarsh
也请确保您正在计算'heightForRowAtIndexPath'单元格的高度,您可以调整标签的大小,但它不适合,如果单元格不知道内容会有多高。 – JMarsh
你究竟在哪里致电你发布的代码? – RaffAl