在b4a我们可以通过测量文本高度和 StringUtils 库轻松计算标签的高度,如下所示:
StringUtils.MeasureMultilineTextHeight
但在B4i没有这样的库或选项可以执行此操作,那么我如何在标签(在 ScrollView 中)中加载长文本?
我必须有标签高度(取决于 txt)才能添加其他按钮并查看其底部并制作我的布局
最佳答案
试试这个
- (CGFloat)getLabelHeight:(UILabel*)label
{
CGSize constraint = CGSizeMake(label.frame.size.width, CGFLOAT_MAX);
CGSize size;
NSStringDrawingContext *context = [[NSStringDrawingContext alloc] init];
CGSize boundingBox = [label.text boundingRectWithSize:constraint
options:NSStringDrawingUsesLineFragmentOrigin
attributes:@{NSFontAttributeName:label.font}
context:context].size;
size = CGSizeMake(ceil(boundingBox.width), ceil(boundingBox.height));
return size.height;
}
像这样使用
CGFloat lblHeight = [self getLabelHeight:self.yourLable];
关于iOS如何计算标签的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35939625/