首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从UILable/UITextView查找最后一行文本

从UILable/UITextView查找最后一行文本
EN

Stack Overflow用户
提问于 2013-01-18 14:43:05
回答 1查看 1.4K关注 0票数 3

下面是我的UILable中显示的文本...

“这份榜单实际上并不是基于直接的人气统计;简单地统计阅读次数最多的经文,就会得到一个排名前100的榜单,其中几乎全部是约翰福音3:16和哥林多前书13章、创世纪1章、罗马书8章和诗篇23章的经文。我们的榜单考虑的是BibleGateway.com用户一次只看了三节或更少的经文。”

如何获得text..ie.的最后一行:“一次只有三行或更少的诗句。”从我的uilable。

任何解决方案都是非常受欢迎的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-18 15:17:49

我可以给出一个想法。愿这对你有所帮助。

代码语言:javascript
复制
 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)之后,从你的UILabel中获取NSAttributedString。2)从NSAttributedString中可以获取"\n“个字符。3)获取最后一个"\n“,并从这个索引中提取值到最后一个索引。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14393709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档