我正在尝试创建一个UITableViewCell,根据它显示的字符串长度来调整其高度,但是在这个方法上卡住了。
这是我现在的代码:
NSString *text = @"A really long string in here";
CGSize theSize = [text sizeWithFont:[UIFont boldSystemFontOfSize:18.0f] constrainedToSize:CGSizeMake(265.0f, MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];
NSString *stringHeight = [NSString stringWithFormat:@"%d", theSize.height];
无论如何,
stringHeight
始终显示为 0
。我错过了什么吗?谢谢!
%f
完全奏效了。我原本以为%d
也适用于浮点数,但显然并非如此。MAXFLOAT
似乎也可以正常工作,不过使用一个足够大的数字同样可以达到目的。感谢您的快速回复! - Triz%d
表示有符号整型,而不是双精度浮点型(与%i
相同)。%f
(或%lf
)适用于浮点数和双精度浮点数。(此外,在64位下,CGFloat是双精度浮点数,但这显然不适用于此处。) - Wevah