【发布时间】:2017-09-26 18:29:45
【问题描述】:
我正在处理一个通知页面,其中输入主要来自 JSON 文件,我需要将它们与本地化字符串结合起来。它应该是这样的:
可以预测,彩色部分来自 JSON 文件,其余部分来自 Localizable.strings。这是来自 Localizable 文件的内容:
"%@ has joined %@"
如果我使用String(format: String, [...]),我有一个纯黑色文本,我无法指定需要着色的部分。
NSAttributedString 我需要同样的功能,但它没有这个方法。
那么如何格式化属性字符串呢?
【问题讨论】:
-
这取决于你想应用什么样的效果,但最简单的方法是在本地化的值上使用 HTML 标签。
-
@Larme 我想改变颜色并使格式化部分加粗,查看示例截图。 UILabel 会自动应用 HTML 标签吗?
-
我检查了样本,但您可能想要更多效果。您可以从 HTML 文本中初始化
NSAttributedString(所有标签均未翻译,但仅管理粗体/颜色):stackoverflow.com/questions/39248092/… 因此添加<b>和其他人应该可以解决问题。
标签: ios iphone swift string nsattributedstring