以下是我的UILable中的文字......
“这个列表实际上并不是基于一个直接的人气统计;简单地计算最多阅读的经文导致前100名列表几乎完全由约翰福音3:16和哥林多前书13,创世纪1,罗马人的经文组成8,和诗篇23.我们的列表改为考虑使用BibleGateway.com用户同时查看三节或更少节目的情况。“
我如何获得文本的最后一行......,“一次三个或更少的经文。”从我的uilable。
非常感谢任何解决方案。
答案 0 :(得分:2)
我可以提出一个想法。愿这对你有所帮助。
UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(50,50,200,350)];
myLabel.numberOfLines = 0;
myLabel.lineBreakMode = UILineBreakModeWordWrap;
myLabel.text = @"This is some text in a UILabel which is long enough to wrap around the lines in said UILabel. This is a test, this is only a test.";
[self.view addSubview:myLabel];
CGSize labelSize = [myLabel.text sizeWithFont:myLabel.font
constrainedToSize:myLabel.frame.size
lineBreakMode:UILineBreakModeWordWrap];
CGFloat labelHeight = labelSize.height;
NSLog(@"labelHeight = %f", labelHeight);
[myLabel release];
上面你可以获得标签的高度,然后你可以通过将高度除以一些适当的数字来获得行数,这取决于字体大小。
1)从NSAttributedString
获取UILabel
之后。
2)从NSAttributedString
您可以获得“\ n”字符。
3)得到最后一个“\ n”并从该索引中提取值到最后一个索引。