在我的应用程序中,显示的是从服务器获取的用户注释。注释包含用户名,标签和一些粗体文本。显示具有多种格式字的显示字符串
例如: “Nancy
标记Clothing:
第2季,情节5.在哪里他们会发现所有的旧衣服”
词语“南希”和“服装:”应该是灰色和橙色颜色分别和“第2季第5集”。应该大胆。
我试过使用NSAttributedString
但未能实现上述目标。
以下是我尝试更改颜色但没有更改的代码。我不太确定如何使用NSAttributedString。
NSMutableAttributedString *title = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@:", tag.title]];
[title addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:246/255.0 green:139/255.0 blue:5/255.0 alpha:1.0f] range:NSMakeRange(0,[title length])];
self.tagCommentLabel.text = [NSString stringWithFormat:@"%@ tagged %@: %@ %@",tag.user.name , title, episode, tag.comment];
有人可以帮我一个代码,我怎么才能实现所需格式的例句?
但我不希望整个字符串具有相同的格式。我希望用户名称为灰色,标题为橙色,情节为粗体。用户名,标题,剧集和评论是来自服务器的不同对象。我将这些对象一起显示在标签“self.tagCommentLabel.text”中的一个句子中,如示例中所示。 –
我明白他们是不同的对象。在我的示例中,我只是向您展示了您在发布的代码中必须做的事情,以便为标题着色。您可以对从服务器获取的所有不同对象(字符串)执行相同操作。例如,如果你想为评论着色,你可以这样做:[attString addAttribute ... range:[string rangeOfString:tag.comment] – Preemoz
它完美的工作。万分感谢!! –