猿问

在Swift中获取和设置UITextField和UITextView的光标位置

在Swift中获取和设置UITextField和UITextView的光标位置

我一直在尝试UITextField和如何使用它的光标位置。我已经找到了许多关系Objective-C答案,如

但由于我正在使用Swift,我想学习如何获取当前光标位置并在Swift中设置它。

下面的答案是我从Objective-C进行实验和翻译的结果。


慕的地10843
浏览 1166回答 3
3回答

达令说

在我的情况下,我不得不使用DispatchQueue:func textViewDidBeginEditing(_ textView: UITextView) {    DispatchQueue.main.async{       textField.selectedTextRange = ...    }}这个和其他线程没有其他工作。PS:我仔细检查了运行textViewDidBeginEditing的线程,并且它是主线程,因为所有UI都应该运行,所以不确定为什么使用main.asynch的那个小延迟工作。

ibeautiful

对于您点的设置光标位置:textView.beginFloatingCursor(at: CGPoint(x: 10.0, y: 10.0))对于重置光标位置:textView.endFloatingCursor()注意:此示例适用于Textview和Textfield。
随时随地看视频慕课网APP

相关分类

iOS
我要回答