2011-08-16 50 views
0

我想在我的應用程序中創建一個只讀文本區域,允許用戶點擊任何單詞並將應用程序讀出。然而,我有點困惑哪種方法最好。我看到兩個選項,使用UILabel並創建一些方法來檢測單擊的區域,然後將其與該區域中的單詞相匹配,但聽起來很難實現。另一方面,我可以使用一組單詞來創建UIbutton的列表。任何建議和/或示例代碼來幫助我將非常感激,謝謝傑森。iOS可點擊的單詞(UILabel或UIbutton的)

注意:每個視圖上有大約30個字。

下面的解決方案效果很好。對於任何想要使用它的人來說,這四行將設置您的UIWebView具有清晰的背景並禁用任何滾動或反彈。

[[myWebView.subviews objectAtIndex:0] setScrollEnabled:NO]; 
[[myWebView.subviews objectAtIndex:0] setBounces:NO]; 
[myWebView setBackgroundColor:[UIColor clearColor]]; 
[myWebView setOpaque:NO]; 

而且一些方便的CSS停止開彈出當用戶按下並保持一個鏈接。

*{-webkit-touch-callout:none; -webkit-user-select: none;} 

回答

3

您的文本區域有多大?如果它很大,那麼爲每個工作創建一個UIButton聽起來有點像是爲了讓文本正確佈局。

我會用一個UIWebView - 讓每個字是這樣的:

<a href="wordpress://WORD1">WORD1</a> <a href="wordpress://WORD2">WORD2</a> <a href="wordpress://WORD3">WORD3</a> 

,並附上您的視圖控制器作爲的WebView UIWebViewDelegate delegate

然後,您可以使用webView:shouldStartLoadWithRequest:navigationType:委託方法:)

+0

HI院長感謝您的回答。我是新來的ios可能你ellaborate你的回答,請..即如何添加文本在每個字攔截機到UI的webview非常感謝 – GoCrazy

+0

檢出文檔(http://developer.apple.com/library/ios/ipad/#documentation/uikit/reference/UIWebView_Class/Reference/Reference.html),特別是loadHTMLString:baseURL:方法 - 將您的HTML字符串作爲第一個參數,並將其作爲第二個參數。然後,如果您實施委託方法,每次有人點擊鏈接時都會被告知。 – deanWombourne