在文本视图的链接中间禁用设置光标

问题描述

我想在文本视图中禁用编辑链接,这就是为什么我需要在链接中间禁用设置光标的原因。视频链接演示了我要完成的任务:https://www.youtube.com/watch?v=uOOC9A93kn8

任何实现目标的想法都将受到赞赏

解决方法

您可以像这样在UITextField中获取光标的位置:

if let selectedTextRange = textField.selectedTextRange {
    let cursorPosition = textField.offset(from: textField.beginningOfDocument,to: selectedTextRange.start)
}

您可以通过执行以下操作来偏移光标:

let offset = 2
if let positionWithOffset = textField.position(from: textField.beginningOfDocument,offset: offset) {
    textField.selectedTextRange = textField.textRange(from: positionWithOffset,to: positionWithOffset)
}

因此,您可以在textField(_:shouldChangeCharactersIn:replacementString:)中的UITextFieldDelegate中使用它,通过将光标偏移到链接的开头来实现所需的行为。