如何计算具有固定宽度和给定文本的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. 动态计算UITableViewCell中的UILabel宽度
- 3. UILabel固定宽度/固定高度获取文本编号
- 4. 如何计算UILabel的高度?
- 5. 计算UILabel的高度?
- 6. 跨度的固定宽度?
- 7. css计算函数:如何计算文本的宽度?
- 8. 如何限制每行文字的数量为固定宽度?
- 9. 如何设置列的固定宽度?
- 10. 如何在一个固定的宽度
- 11. 固定宽度聚类算法
- 12. 固定宽度的多行标签
- 13. 计算一个具有固定宽度的文本块的高度在php
- 14. 如何使用1170px宽度的bootstrap固定宽度布局?
- 15. 如何计算的列表项宽度
- 16. 如何计算grandchildren div的宽度?
- 17. Matlab的固定宽度
- 18. 固定宽度的jqgrid列?
- 19. 固定元素的宽度
- 20. 固定宽度的项目
- 21. 固定宽度格
- 22. fancybox2固定宽度
- 23. 固定宽度和自动宽度的div在一行
- 24. 如何设置容器宽度计算其子女的宽度
- 25. C99的固定宽度整数类型
- 26. (固定宽度)vs(可变宽度)网站设计
- 27. bash中固定宽度整数的宽度是多少?
- 28. 固定宽度div div宽度div?
- 29. 如何指定计算的varchar列的宽度?
- 30. 如何解析perl中的多行固定宽度文件?
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