如果我有一个的NSString或NSMubleArray这样的:如何颜色的NSString或NSMutableArray的和广告它一个UITextView
NSString *p = @"Hello World";
我怎么能你好颜色黄色和绿色的世界?
然后我这样做,我可以添加p到UITextView和textView可视化与我分配的颜色“Hello World”之前?
如果我有一个的NSString或NSMubleArray这样的:如何颜色的NSString或NSMutableArray的和广告它一个UITextView
NSString *p = @"Hello World";
我怎么能你好颜色黄色和绿色的世界?
然后我这样做,我可以添加p到UITextView和textView可视化与我分配的颜色“Hello World”之前?
我认为它通常是不可能的。一种方法是使用单独的标签并为该标签赋予文本颜色。
您不能直观地格式化NSString对象,并且不能更改UITextView或UITextField中单个单词/字符的颜色。如果你想多彩色文本你必须给它的HTML/CSS文件格式并且使用UIWebView:
NSString *p = @"<span style='color: yellow;'>Hello</span> <span style='color: green'>World</span>";
[myWebView loadHTMLString:p baseURL:nil];
(如果你不知道CSS,你可以用它代替的话具体的十六进制颜色或yellow
,例如#F00
= red(#RGB))
这是苹果公司建议使用UITextView而不是使用UITextView的方式,它也可以代替UITextField工作。
你将不得不继承你自己的UITextView类。默认的只有一个textColor属性,它适用于整个textview。或者你可以使用两个单独的标签或文字浏览。
基本消息是,你不能。 UIText视图不支持归因字符串。
您仅限于webkit(请参阅Jonathan的答案)或核心文本。
NSAttributedString和NSMutableAttributedString最近被添加到iOS。如果你不想使用webkit,那么这些是正确和规范的对象。核心文本主要用于绘图,但如果您希望用户能够编辑文本,则没有任何方便的UI包装。
试试这个:https://github.com/AliSoftware/OHAttributedLabel 这个项目解释了如何制作一个多色的字符串。