【发布时间】:2011-04-24 13:43:13
【问题描述】:
我使用sizeWithFont:constrainedToSize:lineBreakMode: 来计算UILabel 的实际高度。
但是,我得到的高度总是基于完整的NSString(在它被截断之前)。
事实上,sizeWithFont:constrainedToSize:lineBreakMode: 和 sizeWithFont:constrainedToSize: 都会产生相同的结果,就像 UILineBreakModeTailTruncation 被忽略一样!
无论我尝试什么,这段代码都会产生60.000000,但第一个结果应该小于60。知道为什么吗?
CGSize aSize;
aSize=[@"One two three four five six seven eight nine ten" sizeWithFont:[UIFont boldSystemFontOfSize:12] constrainedToSize:CGSizeMake(100, 100)];
NSLog(@"aSize.height: %f",aSize.height); //returns 60.000000
aSize=[@"One two three four five six seven eight nine ten" sizeWithFont:[UIFont boldSystemFontOfSize:12] constrainedToSize:CGSizeMake(100, 100) lineBreakMode:UILineBreakModeTailTruncation];
NSLog(@"aSize.height: %f",aSize.height); //returns 60.000000
谢谢。
【问题讨论】: