2013-01-17 24 views
33

Tôi đang sử dụng Trình tạo giao diện để bố cục ứng dụng của mình. Tôi có một UITextView chứa một số văn bản, một phần trong đó là một URL mà tôi muốn làm cho có thể nhấp (ví dụ: khởi chạy trình duyệt). Tôi đã đọc về làm thế nào để làm điều này và tin rằng tôi đang làm điều đó một cách chính xác, tuy nhiên trong khi URL xuất hiện màu xanh/clickable, nhấp vào nó trong giả lập iPhone không hoạt động. Chẳng có gì xảy ra.Không thể tạo URL có thể nhấp trong UITextView

điều khiển của tôi:

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

Thực hiện tôi @synthesize review; (và sáng có thể thao tác văn bản của xem, do đó, không nghĩ đó là vấn đề).

Trong IB tôi có:

IB Settings

..then sau khi tôi đi đến thiết lập các văn bản (và cố gắng để làm cho các URL trong giao diện có thể nhấp) Tôi làm:

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

... hiển thị nội dung nào đó như:

Simulator Output

... mà thực sự có vẻ như nó muốn làm việc, tuy nhiên khi nhấp vào URL không có gì xảy ra. Tôi đang thiếu gì?

--UPDATE--

Cố gắng thêm self.review.editable = NO; để đáp ứng với câu trả lời Dixit Patel, nhưng nó không khắc phục được vấn đề này:

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

Bị bỏ qua? Rất muốn biết tại sao. – Madbreaks

Trả lời

14

Vấn đề này đã được rằng User Interaction Enabled đã không được chọn ở dưới cùng của phần Chế độ xem của Attributes Inspector IB của.

+0

Bạn đã làm cho ngày của tôi thân yêu! – Prasanna

21

Cố gắng sử dụng Hy vọng điều này giúp đỡ này cho bạn

Các liên kết không thể nhấp theo mặc định trong một UITextView. Nhưng may mắn là chúng có thể được kích hoạt với một vài dòng mã đơn giản:

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

Đáng tiếc là bạn không thể có một thể chỉnh sửa UITextView với các liên kết có thể click. Nếu bạn đặt có thể chỉnh sửa thành CÓ, thì tất cả các liên kết sẽ được coi là văn bản thông thường.

EDIT

Có u kiểm tra đúng nó có thể vô hiệu hóa UITextview trong tập tin .xib của bạn.

+0

Cảm ơn. Đã thêm 'self.review.editable = NO;' (đã có phần khác), nhưng vẫn không hoạt động. Đã thử thêm cả hai dòng mã trước và sau khi đặt chế độ xem 'văn bản'. – Madbreaks

+0

Đã cập nhật câu hỏi của tôi để bao gồm cài đặt có thể chỉnh sửa. – Madbreaks

+2

@Madbreaks có u kiểm tra đúng cách nó có thể được vô hiệu hóa UITextview trong tập tin .xib của bạn. –

48

Kiểm tra các "lựa chọn" và "Liên kết" hộp kiểm trong TextView thuộc tính thanh tra:

enter image description here

+0

self.selectable = true –

+1

không có nút nào trong trình chỉnh sửa bảng phân cảnh –

+1

@AntonTropashko Thực ra, có một nút cho trình chỉnh sửa Storyboard. Đó là trong Thanh tra thuộc tính. – shim

Các vấn đề liên quan