ios – 使用NSMutableAttributedStrings快速更改文本颜色

ios – 使用NSMutableAttributedStrings快速更改文本颜色,第1张

概述我有一个UITableView,我想在同一行中使用不同的颜色显示每行的文本. 我试过这个代码,尝试从Obj-C翻译,但我不能让它工作 let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as NSManagedObject var attrString: NSMutableAttribut 我有一个UItableVIEw,我想在同一行中使用不同的颜色显示每行的文本.

我试过这个代码,尝试从Obj-C翻译,但我不能让它工作

let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as NSManagedobject        var attrString: NSMutableAttributedString = NSMutableAttributedString(string: object.valueForKey("example1")!.description)        attrString.addAttribute(NSForegroundcolorAttributename,value: UIcolor.redcolor(),range: NSMakeRange(0,attrString.length))        var stringToCell:String = String(format: "%@    %@",attrString,object.valueForKey("example2")!.description)        cell.textLabel?.text = stringToCell

这一切的输出是

其中数字34对应于object.valueForKey(“example1”)!. description,所以问题是数字不是红色,而第二部分(object.valueForKey(“example2”)!.description)被替换为{ .

如果我留下关于NSAttributedString的这段代码,行文本会正确显示.

解决方法 我认为问题可能在于分配给cell.textLabel?.text而不是cell.textLabel?.attributedText.也许是这样的:
let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as NSManagedobjectvar attrString: NSMutableAttributedString = NSMutableAttributedString(string: object.valueForKey("example1")!.description)attrString.addAttribute(NSForegroundcolorAttributename,attrString.length))var descString: NSMutableAttributedString = NSMutableAttributedString(string:  String(format: "    %@",object.valueForKey("example2")!.description))descString.addAttribute(NSForegroundcolorAttributename,value: UIcolor.blackcolor(),descString.length))attrString.appendAttributedString(descString);cell.textLabel?.attributedText = attrString

不确定你是否希望字符串的第二部分是红色或其他颜色,所以我把它变黑了.

总结

以上是内存溢出为你收集整理的ios – 使用NSMutableAttributedStrings快速更改文本颜色全部内容,希望文章能够帮你解决ios – 使用NSMutableAttributedStrings快速更改文本颜色所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1098192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存