Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html UITableViewCell中的UILabel使每个willDisplayCell的字体大小加倍_Html_Ios_Uitableview_Uilabel_Nsattributedstring - Fatal编程技术网

Html UITableViewCell中的UILabel使每个willDisplayCell的字体大小加倍

Html UITableViewCell中的UILabel使每个willDisplayCell的字体大小加倍,html,ios,uitableview,uilabel,nsattributedstring,Html,Ios,Uitableview,Uilabel,Nsattributedstring,我在表格单元格中有一个UILabel,我在界面生成器中设置了它的字体。现在,当显示单元格时,我获取HTML字符串并将其转换为NSAttributedString,其中我使用标签的字体类型和大小,并将其用作HTML文本的默认字体 问题是,每次重复使用单元格时,其标签的字体都会翻倍,例如从17点开始,然后是34、68到数百万 我从未在标签的字体属性中设置过任何内容,那么为什么它会发生变化呢 此my String扩展名用于将其格式化为NSAttributeString: public func get

我在表格单元格中有一个
UILabel
,我在界面生成器中设置了它的字体。现在,当显示单元格时,我获取HTML字符串并将其转换为
NSAttributedString
,其中我使用标签的字体类型和大小,并将其用作HTML文本的默认字体

问题是,每次重复使用单元格时,其标签的字体都会翻倍,例如从17点开始,然后是34、68到数百万

我从未在标签的字体属性中设置过任何内容,那么为什么它会发生变化呢

此my String扩展名用于将其格式化为NSAttributeString:

public func getHtml2AttributedString(font: UIFont) -> NSAttributedString? {
    let modifiedString = "<style>body{font-family: '\(font.fontName)'; font-size:\(font.pointSize)px; margin:0; padding:0;}</style>\(self)";

    guard let data = modifiedString.data(using: .utf8) else {
        return nil
    }

    do {
        return try NSAttributedString(data: data,
                                   options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8.rawValue],
                        documentAttributes: nil)
    }
    catch {
        print(error)
        return nil
    }
}

最后,这是
UILabel
的一个“功能”,即在设置attributedText属性后,它会根据attributedText的属性自动更改其字体属性。更多信息可以在中找到。

您可以添加
cellforrowatinexpath
code吗?@Priyal我刚刚添加了更多信息,
的核心将显示
方法
label.attributedText = htmlString?.getHtml2AttributedString(font: label.font)