2013-01-17 91 views
33

我使用Interface Builder來佈局我的應用程序。我有一個包含一些文本的UITextView,其中的一部分是我想要點擊的URL(例如啓動瀏覽器)。我已經閱讀了如何做到這一點,並相信我正確地做到了,但是當URL顯示爲藍色/可點擊時,在iPhone模擬器中單擊它不起作用。什麼都沒發生。無法在UITextView中使URL可點擊

我的控制器:

@interface FirstViewController : UIViewController <UISearchBarDelegate> 
@property (nonatomic, retain) IBOutlet UITextView *review; 
@end 

我在執行我@synthesize review;(和我能操縱視圖的文本,所以不覺得這是個問題)。

在IB我有:

IB Settings

..then後,當我去設置文本(並試圖讓網址在視圖中點擊)我做的:

self.review.text = content; 
// My understanding is that this makes URLs clickable... 
self.review.dataDetectorTypes = UIDataDetectorTypeLink; 

...其顯示如下:

Simulator Output

...看起來真的很想工作,但是當點擊URL時什麼也沒有發生。我錯過了什麼?

--UPDATE--

試圖響應迪克西特帕特爾的答案添加self.review.editable = NO;,但它並沒有解決這個問題:

self.review.text = content; 
// My understanding is that this makes URLs clickable... 
self.review.editable = NO; 
self.review.dataDetectorTypes = UIDataDetectorTypeLink; 
+1

Downvoted huh?想知道爲什麼。 – Madbreaks

回答

14

User Interaction Enabled沒有在IB的屬性檢查器的視圖部分的底部檢查的問題。

+0

你讓我親愛的一天! – Prasanna

21

嘗試使用此希望這對您有所幫助

UITextView中默認鏈接不可點擊。但幸運的是,他們可以用代碼簡單的幾行啓用:

self.review.editable = NO; 
self.review.dataDetectorTypes = UIDataDetectorTypeLink; 

不幸的是,你不能有一個可編輯UITextView與可點擊的鏈接。如果您將可編輯設置爲YES,則所有鏈接將被視爲常規文本。

編輯

具有u檢查正常也可能是UITextView的禁用你的.xib文件。

+0

謝謝。添加'self.review.editable = NO;'(已經有另一部分),但仍然無法工作。嘗試在設置視圖「text」之前和之後添加這些代碼行。 – Madbreaks

+0

更新我的問題以包含可編輯設置。 – Madbreaks

+2

@Madbreaks有你檢查正確它可能是UITextview禁用你的.xib文件。 –

48

檢查「可選」和「鏈接」複選框中的TextView屬性檢查器:

enter image description here

+0

self.selectable = true –

+1

故事板編輯器中沒有該按鈕 –

+1

@AntonTropashko實際上在Storyboard編輯器中有一個按鈕。它在屬性檢查器中。 – shim