在 UITextField 中粘贴文本时的奇怪行为

Lee*_*eng 5 uitextfield ios

这是我所做的:

  1. 打开 App Store 应用
  2. 在搜索框中输入“123”
  3. 从搜索框中剪切文本“123”
  4. 在搜索框中输入“xx”
  5. 将搜索框光标移动到两个“x”之间
  6. 将“123”粘贴到搜索框

结果应该是“x123x”,但我得到的是“x 123 x”。这发生在所有应用程序的所有 UITextField 上。

请参考这个gif: 演示

这是iOS错误吗?还是我在这里遗漏了什么?

jos*_*new 4

这是有意的行为。iOS 11 上有一个属性可以禁用此功能:

if #available(iOS 11.0, *) {
    textField.smartInsertDeleteType = .no
}
Run Code Online (Sandbox Code Playgroud)

另请参阅:https://developer.apple.com/documentation/uikit/uitextinputtraits/2865828-smartinsertdeletetype ?changes=_6