Sur*_*gch 5 uitextfield ios swift
昨天我正在努力获取和设置光标位置UITextField.现在我试图在光标位置之前获取角色.所以在下面的例子中,我想要返回一个"e".
func characterBeforeCursor() -> String
Run Code Online (Sandbox Code Playgroud)
笔记
我没有看到任何与此相同的其他SO问题,但也许我错过了它们.
我先写了这个问题,当我找到答案时,我会同时发布问题和答案.当然,欢迎更好的答案.
我说"性格"但String很好.
Sur*_*gch 13
如果光标正在显示并且位置之前的位置有效,则获取该文本.感谢这个答案的一些提示.
func characterBeforeCursor() -> String? {
// get the cursor position
if let cursorRange = textField.selectedTextRange {
// get the position one character before the cursor start position
if let newPosition = textField.position(from: cursorRange.start, offset: -1) {
let range = textField.textRange(from: newPosition, to: cursorRange.start)
return textField.text(in: range!)
}
}
return nil
}
Run Code Online (Sandbox Code Playgroud)
的结果
if let text = characterBeforeCursor() {
print(text)
}
Run Code Online (Sandbox Code Playgroud)
根据你的例子,是"e".
| 归档时间: |
|
| 查看次数: |
2796 次 |
| 最近记录: |