在Swift中獲取和設置UITextField和UITextView的光標位置我一直在嘗試UITextField和如何使用它的光標位置。我已經找到了許多關系Objective-C答案,如在ios中獲取UITextField的光標位置控制UITextField中的光標位置UITextField獲取當前編輯的單詞但由于我正在使用Swift,我想學習如何獲取當前光標位置并在Swift中設置它。下面的答案是我從Objective-C進行實驗和翻譯的結果。
3 回答

達令說
TA貢獻1821條經驗 獲得超6個贊
在我的情況下,我不得不使用DispatchQueue:
func textViewDidBeginEditing(_ textView: UITextView) { DispatchQueue.main.async{ textField.selectedTextRange = ... }}
這個和其他線程沒有其他工作。
PS:我仔細檢查了運行textViewDidBeginEditing的線程,并且它是主線程,因為所有UI都應該運行,所以不確定為什么使用main.asynch的那個小延遲工作。

ibeautiful
TA貢獻1993條經驗 獲得超6個贊
對于您點的設置光標位置:
textView.beginFloatingCursor(at: CGPoint(x: 10.0, y: 10.0))
對于重置光標位置:
textView.endFloatingCursor()
注意:此示例適用于Textview和Textfield。
- 3 回答
- 0 關注
- 1293 瀏覽
添加回答
舉報
0/150
提交
取消