如果我有一個的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 這個項目解釋瞭如何製作一個多色的字符串。