使用 iPhone SDK 的 UIWebView 元件會發現一件很聰明的蠢事,就是當 Web 內容有出現類似電話號碼的字串時,UIWebView 會很聰明的自動加入底線,但點過一次後就會消失(在iPhone環境下點了可以撥號) 。
但是當我們在顯示像是"日期資訊"或"數字"的時候就很會掉入這個陷阱,使得這個功能將變得相當惱人!如下圖:
總有辦法關掉吧!?請參考以下方法進行修改。
在你的 AppDelegate.m 中設定參數,加入以下程式碼:
- (void)webViewDidStartLoad:(UIWebView *)theWebView { //UIDataDetectorTypeNone表示不偵測</pre> theWebView.dataDetectorTypes = UIDataDetectorTypeNone; return [ super webViewDidStartLoad:theWebView ]; }
執行以後的效果如下,果然 underline 消失了。
其他參數設定方式可參考:
- UIDataDetectorTypePhoneNumber
- UIDataDetectorTypeLink
- UIDataDetectorTypeNone
- UIDataDetectorTypeAll
Reference