以不同方式格式化UILabel中的文本

时间:2011-09-30 17:06:56

标签: iphone objective-c ipad

我希望UILabel中的不同单词是不同的颜色。这是否意味着每个单词都需要是一个不同的UILabel?我猜是的,虽然肯定会很好地将颜色代码放在标签上,你知道吗?我想我有点被HTML中的文本标记所破坏。

3 个答案:

答案 0 :(得分:5)

iOS中没有正确的UIRichTextView。它在我的iOS 6愿望清单上很高(并且有一些理由相信我们可能会因为发布Pages而得到它。)

您的选择是使用多个UILabel观看次数,NSString UIKit Additions,核心文字,UIWebView或少数第三方框架之一,例如:

  • NSAttributedString-附加换HTML
  • CoreTextWrapper
  • OHAttributedLabel
  • OmniUI

所有当前的解决方案都有不同的问题。最常见的问题是,除非您使用Web视图,否则很难获得选择和复制功能以使用富文本。 Web视图非常令人讨厌,因为它们是异步的,您必须在JavaScript中进行大量的交互。

我希望有更好的答案。

(强制性先令:iOS 5 Programming Pushing the Limits第18章深入讨论了这个主题。)

答案 1 :(得分:2)

UILabel不支持分段格式化(整个事物只能有一种格式)。

看看OHAttributedLabel,它可以做你想要的。

答案 2 :(得分:0)

据我所知,你需要为每个不同颜色的单词分别贴上标签。根据您的尝试,您可以使用myLabel.textColor来更改定期或事件等的颜色。