2013-03-15 193 views
2

我想獲得一個透明的UITextView,我知道如何設置它。我還想要的就像正在顯示的文本下的彩色背景。文本視圖背景再次將整個視圖矩形設置爲給定的顏色,我想要的是文本正下方的顏色。任何簡單的方法來實現這樣的事情?UITextView文本背景顏色

+0

看看這個TextViewHighlighter https://gist.github.com/onmyway133/c1fb7f8bf26a0bd144a3 – onmyway133 2015-07-13 15:27:07

回答

6

從我可以告訴你試圖完成對文本的突出顯示效果。如果是這種情況,你可以使用NSAttributedString。它允許您設置文本的背景顏色而不是視圖背景。

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"Test String"]; 
[attributedString addAttribute:NSBackgroundColorAttributeName value:[UIColor lightGrayColor] range:NSMakeRange(0, 11)]; 

然後設置你的UITextView中的attributedText屬性:

textView.attributedText = attributedString; 
+0

這幾乎是它。問題是文字比實線短,並且高亮顯示直到行尾。我可以圍繞亮點的角落嗎? – foFox 2013-03-15 18:51:41