2012-02-21 37 views

Trả lời

32

UITextView thông qua giao thức UITextInput, có thuộc tính selectedTextRange. Thiết lập thuộc tính để nil:

self.textView.selectedTextRange = nil; 
+0

Lưu ý: Đây chỉ hoạt động trên iOS 5+. – lorean

2

Câu trả lời trước đó không làm việc cho tôi, trình biên dịch phàn nàn:

Sending 'void *' để tham số của loại tương thích 'NSRange' (aka 'struct _NSRange ')

tôi đã phải sử dụng một sản phẩm nào NSRange struct thay vì:

[self setSelectedRange:(NSRange){ .location = 0, .length = 0 }]; 
+6

'selectedTextRange' không giống với' selectedRange'. Đó là lý do tại sao bạn gặp lỗi. –

1

Đây là cách nó hoạt động và bạn có thể chạm vào bất cứ nơi nào bạn muốn trong giao diện để bỏ chọn văn bản đã chọn trước đó:

On UIViewController bạn viết hàm này:

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 

    self.view.endEditing(true) 
} 
+0

Bạn cũng không nên gọi 'super.touchesBegan (_: with:) '? – ma11hew28

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