我遇到問題。我的部分應用需要將文本顯示在表格中。文本需要可選/可複製(但不可編輯),文本中的任何URL都需要高亮顯示,並且點擊時允許我使用該URL並打開我的嵌入式瀏覽器。帶有可選/可複製文本的UITableViewCell,它也檢測iPhone上的URL
我已經看到了解決這些問題之一的兩個解決方案,但不是兩者都有。
解決方案1:Icon Factory's IFTweetLabel
我嘗試的第一個解決方案是使用由圖標工廠成爲可能,並且在Twitterrific使用的IFTweetLabel類。
儘管此解決方案允許鏈接(或任何可以通過正則表達式找到的東西)被檢測爲根據具體情況處理,但它不允許選擇和複製。
還有一個問題,如果一個URL足夠長以便包裝,該類重疊在URL上方以使其交互式的按鈕無法包裝和畫出屏幕,看起來很奇怪。
解決方案2:使用IFTweetLabel和處理手動複製
我想是保持IFTweetLabel到位,處理環節,但使用長按手勢,像如何實現複印的第二件事短信應用程序處理它。這只是工作,但它不允許任意選擇文本,整個文本被複制,或根本沒有被複制......非常黑白。
解決方案3:UITextView
我的第三個嘗試是一個UITextView
添加爲表格單元格的子視圖。
這個不能解決的唯一問題是檢測到的URL不能被我處理。文本視圖使用UIApplication
的openURL:
方法,該方法退出我的應用程序並啓動Safari。
此外,由於表格視圖可能會相當大,因此子視圖中添加的UITextView
的數量會導致在整個表格中滾動顯着的性能拖延,特別是在iPhone 3G時代設備上(由於創建,佈局,每次合成一個單元格在屏幕上滾動等)。
所以我的問題,你所有的知識淵博的人在那裏是:我能做什麼?
是否UIWebView
是最佳選擇?除了性能拖拽之外,我認爲webview可以解決所有上述問題,如果我沒有記錯的話,在2.0天之後,Apple文檔實際上推薦了需要文本格式/超鏈接的Web視圖。
任何人都可以想到一種方法來實現這個沒有性能拖動?
非常感謝大家誰可以提供幫助。
對於#3,對於您未處理的URL問題,請看下面這個:http://stackoverflow.com/questions/1305544/how-to-open-uitextview-web-links-in-a -uiwebview-instead-of-safari – user102008 2011-04-27 00:33:46