如何计算具有固定宽度和给定文本的UILabel的行数?如何计算固定宽度的UILabel的行数?
回答
此代码假定label
具有所需的文本,并且其框架已被设置为所需的宽度。
- (int)lineCountForLabel:(UILabel *)label {
CGSize constrain = CGSizeMake(label.bounds.size.width, FLT_MAX);
CGSize size = [label.text sizeWithFont:label.font constrainedToSize:constrain lineBreakMode:UILineBreakModeWordWrap];
return ceil(size.height/label.font.lineHeight);
}
更新:
如果你想要的是确定基于其文字和电流宽度的标签所需的高度,然后将其更改为:
- (CGSize)sizeForLabel:(UILabel *)label {
CGSize constrain = CGSizeMake(label.bounds.size.width, FLT_MAX);
CGSize size = [label.text sizeWithFont:label.font constrainedToSize:constrain lineBreakMode:UILineBreakModeWordWrap];
return size;
}
返回size
是包含标签的正确宽度和高度。
首先使用constrainedSize
CGSize labelSize = [label.text sizeWithFont:label.font
constrainedToSize:label.frame.size
lineBreakMode:UILineBreakModeWordWrap];
CGFloat labelHeight = labelSize.height;
一旦你有标签的高度,然后检查与字体大小的行数,其中fontsize
是您正在使用的大小得到的标签尺寸标签的高度你标签。 e.g它可能是10或根据您的要求
CGSize sizeOfText = [label.text sizeWithFont:label.font
constrainedToSize:label.frame.size
lineBreakMode:UILineBreakModeWordWrap];
int numberOfLines = sizeOfText.height/label.font.pointSize;
我该如何修复宽度? – Alexis 2013-03-01 15:46:18
用fontSize划分非常好,谢谢。 – 2013-11-05 20:12:37
不推荐使用iOS 7 – 2015-12-31 12:17:49
您可以使用sizeWithFont计算来显示字符串所需的垂直高度:constrainedToSize:方法上的NSString。 考虑到这个尺寸,您可以调整标签大小来显示整个字符串。
- 1. 如何计算文本的高度(固定宽度)?
- 2. CSS - 改变固定的宽度来计算的宽度
- 3. 动态计算UITableViewCell中的UILabel宽度
- 4. UILabel固定宽度/固定高度获取文本编号
- 5. 如何计算UITextview的多行宽度?
- 6. 具有固定宽度和NSAttributedString的UILabel的渲染线数
- 7. 如何计算UILabel的高度?
- 8. 计算UILabel的高度?
- 9. UILabel高度计算
- 10. 计算固定行数和表格高度的行高
- 11. 跨度的固定宽度?
- 12. 固定宽度
- 13. 固定宽度
- 14. 固定宽度
- 15. Javascript计算固定格长度的矩形的高度和宽度
- 16. css计算函数:如何计算文本的宽度?
- 17. 如何限制每行文字的数量为固定宽度?
- 18. 如何设置列的固定宽度?
- 19. 如何在一个固定的宽度
- 20. 固定宽度聚类算法
- 21. 固定宽度的多行标签
- 22. 计算一个具有固定宽度的文本块的高度在php
- 23. 如何使用1170px宽度的bootstrap固定宽度布局?
- 24. 如何计算的列表项宽度
- 25. 如何计算`display:table-cell`的宽度?
- 26. 如何计算grandchildren div的宽度?
- 27. 如何计算滚动条的宽度?
- 28. 固定宽度的网站
- 29. 固定元素的宽度
- 30. IMG固定宽度的8
http://stackoverflow.com/questions/4172615/how-to-find-uilabels-number-of-lines – Sunkas 2013-03-01 15:40:04
已经尝试过,它不起作用 – Alexis 2013-03-01 15:45:19