如何使用HTML内容动态获取UILabel高度?

时间:2014-04-14 10:35:12

标签: html ios uitextview

我有一个查询。我用Google搜索了很多,但却无法找到它的解决方案。

我正在使用一个api,其中我将内容作为HTML字符串。

现在我想将该数据设置为UITextView。 现在首先计算UITextView的高度我正在使用

CGSize constraint = CGSizeMake(width-MARGIN - (6 * 2), 20000.0f);
    // Get the size of the text given the CGSize we just made as a constraint
    CGSize size = [lbltitle.text sizeWithFont:[UIFont fontWithName:custom_font_name size:lbltitle.font.pointSize] constrainedToSize:constraint lineBreakMode:NSLineBreakByWordWrapping];
    int lines = size.height / lbltitle.font.pointSize + 1;

    [lbltitle setFrame: CGRectMake(lbltitle.frame.origin.x,lbltitle.frame.origin.y,width-MARGIN, lbltitle.font.pointSize * lines)];

但是现在当我传递html内容时,它产生的高度超过了所需的高度。那么用HTML文本计算UITextview高度的解决方案是什么呢? 我使用下面的代码将HTML文本分配给UITextView。

[txtdescription setValue:data.desc forKey:@"contentToHTMLString"];

提前致谢。

2 个答案:

答案 0 :(得分:0)

您可以使用UIWebView代替UITextView

哪里

NSData* htmlData = [ content dataUsingEncoding:NSUTF8StringEncoding];
                [webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:[NSURL URLWithString:@""]];

答案 1 :(得分:0)

您好我找到了我自己的问题的解决方案

https://github.com/mwaterfall/MWFeedParser

我需要将第一个HTML文本转换为纯文本,然后我可以计算大小。