Swift - 如何在出现警报时阻止键盘消失

Swift - How to stop the keyboard from dismissing when an alert shows up

我有一个带有文本字段的简单视图,该文本字段在视图加载时成为第一响应者。如果用户输入了错误的代码,会弹出一个 'oops' 警告对话框,键盘消失,点击警告对话框上的一个选项后,键盘会再次出现,导致我的视​​线四处移动。

有没有办法阻止这个键盘 - 永远 - 解雇?我尝试使用我在别处找到的这个:

override var disablesAutomaticKeyboardDismissal: Bool { return true }

但是它似乎并没有解决问题。谁能给我提个醒? :) 谢谢!

使用以下解决方案修复,根据此答案修改 -

func displayError(message: String) {
    let controller = UIAlertController(title: "Oops!", message: message, preferredStyle: .alert)
    controller.addAction(UIAlertAction(title: "Dismiss", style: .default))
    
    guard let alertWindow = UIApplication.shared.windows.last,
          alertWindow.windowLevel == UIWindow.Level(rawValue: 10000001.0) else {
      navigationController.present(controller, animated: true, completion: nil)
      return
    }
    alertWindow.rootViewController?.present(controller, animated: true, completion: nil)
  }