在Swift中获取和设置UITextField和UITextView的光标位置我一直在尝试UITextField和如何使用它的光标位置。我已经找到了许多关系Objective-C答案,如在ios中获取UITextField的光标位置控制UITextField中的光标位置UITextField获取当前编辑的单词但由于我正在使用Swift,我想学习如何获取当前光标位置并在Swift中设置它。下面的答案是我从Objective-C进行实验和翻译的结果。
3 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
在我的情况下,我不得不使用DispatchQueue:
func textViewDidBeginEditing(_ textView: UITextView) { DispatchQueue.main.async{ textField.selectedTextRange = ... }}
这个和其他线程没有其他工作。
PS:我仔细检查了运行textViewDidBeginEditing的线程,并且它是主线程,因为所有UI都应该运行,所以不确定为什么使用main.asynch的那个小延迟工作。
白猪掌柜的
TA贡献1893条经验 获得超10个赞
对于您点的设置光标位置:
textView.beginFloatingCursor(at: CGPoint(x: 10.0, y: 10.0))
对于重置光标位置:
textView.endFloatingCursor()
注意:此示例适用于Textview和Textfield。
- 3 回答
- 0 关注
- 1912 浏览
添加回答
举报
0/150
提交
取消