我在标签上设置属性我的代码写在下面, 唯一的问题是我的字体和颜色没有在标签上呈现。
$objWriter->setPreCalculateFormulas(true);
任何人都可以帮忙吗?
答案 0 :(得分:1)
NSAttributedString(data:options:documentsAttributes)在其选项中不支持NSFontAttributeName
和NSForegroundColorAttributeName
。
他们将被忽略。
因此,您必须使用NSMutableAttributedString
,然后添加自己的效果:
let encodedData = htmlString.dataUsingEncoding(NSUTF8StringEncoding)!
let attributedOptions : [String: AnyObject] = [
NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute: NSUTF8StringEncoding
]
let attributedString = try NSMutableAttributedString(data: encodedData, options: attributedOptions, documentAttributes: nil)
let addedEffects:[String:AnyObject] = [
NSFontAttributeName: UIFont(name: "SourceSansPro-Regular", size:16)!,
NSForegroundColorAttributeName: UIColor.redColor()
]
attributedString.addAttributes(addedEffects, range:NSRange(location:0,length:attributedString.length)
htmlTextLabel.attributedText = attributedString
注意:我不知道它是否编译,但你应该明白这一点。
我发布了答案,有一个" Swift方式"理解这个问题,但它显然是重复的,并且如果问题被标记为这样,将很乐意删除答案。