gpt4 book ai didi

ios - 如何在按下另一个键时模拟一个按键按下?

转载 作者:行者123 更新时间:2023-11-30 11:56:39 25 4
gpt4 key购买 nike

我正在尝试让删除键执行空格键通常执行的操作。换句话说,当用户单击 UITextField 中的删除时,我希望出现一个空格。

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let char = string.cString(using: String.Encoding.utf8)!
let isBackSpace = strcmp(char, "\\b")
if (isBackSpace == -92) {
print("Delete was pressed")
return false
}

return true
}

我知道这只会禁用删除键,但我将如何继续?此外,空格将替换所选文本(始终会选择一些文本)。

最佳答案

textField 参数是用户正在其中工作的文本字段。你可以在那里自由地做任何你喜欢做的事。因此,除了返回 false 之外,在执行此操作之前,请将 textFieldtext 更改为您想要的任何内容。

如果您想要在文本中附加一个空格,一个简单的方法是获取 textField.text!,在该字符串中附加一个空格,然后设置 textField.text 。或者,如果您想用空格替换当前选择,而不是让它被删除,请对 textField.text 执行此操作,并使用 range 参数告诉您空间应该消失。

换句话说,如果您了解如何使用字符串,则可以在此方法中对 textField.text 字符串进行操作。

还有其他使用 UITextInput 协议(protocol)的方法,它允许您假装是键盘。例如,只需说 textField.insertText("") 可能会给您带来所需的结果,但您必须尝试一下才能看到。

关于ios - 如何在按下另一个键时模拟一个按键按下?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47742987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com