UITextView上檢測到的鏈接始終爲藍色。沒有辦法直接改變這一點。但是,我可以覆蓋某種過濾器,例如,藍色變成藍色嗎?使用過濾器更改UITextView鏈接的顏色?
回答
沒有可行的方法來做到這一點與UITextView,你可以嘗試使用UIWebView改變其'自動檢測鏈接'屬性,然後重新格式化HTML。
UIWebView *webView = [[UIWebView alloc] init];
webText.delegate = self;
[webView setDataDetectorType:UIDataDetectorTypeLink];
NSString * htmlString = [NSString stringWithFormat:@"<html><head><script> document.ontouchmove = function(event) { if (document.body.scrollHeight == document.body.clientHeight) event.preventDefault(); } </script><style type='text/css'>* { margin:0; padding:0; } p { color:black; font-family:Helvetica; font-size:14px; } a { color:#000000; text-decoration:underline; }</style></head><body><p>%@</p></body></html>", [update objectForKey:@"text"]];
[webText loadHTMLString:htmlString baseURL:nil];
或者類似的東西。
希望這會有所幫助。
編輯
不要忘了執行UIWebView的委託這個工作。
我曾考慮過這樣做,但UIWebView對我的需求來說實在太「沉重」,特別是因爲每個表視圖單元格都會有一個。 – cannyboy
我認爲這應該是你最好的選擇,如果不是你唯一的選擇。我真的很好奇,看看是否有另一種解決方案,它會自動更好,因爲UIWebView確實太重,不適合你的原因。 (如果你問我,請點擊每個原因。) – Craimasjien
實際上有一種方法可以用私有API來做到這一點。
甲UITextView
具有UIWebDocumentView
類的(單個)子視圖中,與選擇setUserStyleSheet:
。
以下代碼應該將鏈接的顏色更改爲綠色。至少,它對我有效! :)
for (UIView *subview in textView.subviews) {
[subview setUserStyleSheet:@"a { color: #00FF00; }"];
}
我知道這是真的很晚,但幾個小時的谷歌搜索沒有讓我沒有在哪裏,所以我想我會分享這個。
UIwebDocumentView有缺失的選擇器。 導入UIWebDocumentView.h來獲取它。 不幸的是,這是一個私人API,yourapp可能會被蘋果拒絕:-(
- 1. 使用鏈接更改JLABEL的顏色
- 2. 更改NSMutableAttributedString中鏈接的顏色
- 3. 更改鏈接顏色的div hover
- 4. 更改鏈接中的字體顏色
- 5. 更改cshtml中鏈接的顏色
- 6. 更改RichTextBox中的鏈接顏色
- 7. UIWebView更改dataDetectorType鏈接的顏色
- 8. 更改webview上鍊接的顏色
- 9. 更改UITextView滾動條顏色
- 10. 更改照片顏色/應用照片過濾器鈦手機
- 11. UIWebView迅速更改鏈接顏色
- 12. 如何更改鏈接顏色JSF表
- 13. JQuery - 更改活動鏈接顏色
- 14. Javascript更改鏈接顏色錯誤?
- 15. 更改鏈接背景和顏色
- 16. 導航鏈接隨機更改顏色
- 17. JavaScript鏈接按鈕以更改顏色
- 18. CSS/PHP更改懸停顏色鏈接
- 19. Facebook likebox更改鏈接顏色
- 20. 使用樣式表更改懸停上的鏈接的顏色
- 21. 使用Sharepoint 2010中的功能區更改鏈接的顏色?
- 22. 如何更改使用css類的鏈接的字體顏色?
- 23. Bootstrap - 更改訪問過的鏈接的顏色
- 24. RadGridView,更改過濾器圖標的顏色
- 25. 過濾器更改句子中單詞的顏色angularjs
- 26. 如何使用jQuery更改ul中活動鏈接的顏色?
- 27. 使用CSS更改選定的鏈接顏色?
- 28. 更改Resharper中NUnit測試運行器中鏈接的顏色
- 29. 更改中繼器中的鏈接按鈕顏色
- 30. ASP .NET更改中繼器內部的鏈接顏色 - 點擊
不錯的想法=)其他文字呢? – Nekto