Xcode 11.1中的警报对话框错误?

时间:2019-10-12 23:33:37

标签: swift xcode11

昨天我决定将Xcode更新到版本11.1(11A1027),我认为我发现了错误或Swift语法已更改。

我有一个几乎空白的viewController,其中有两个按钮,一个关闭ViewController,另一个显示警报。

@IBAction func search_BTN(_ sender: Any) {
    //1. Create the alert controller.
    let alert = UIAlertController(title: "Some Title", message: "Enter a text", preferredStyle: .alert)

    //2. Add the text field. You can configure it however you need.
    alert.addTextField { (textField) in
        textField.text = "Some default text"
    }

    // 3. Grab the value from the text field, and print it when the user clicks OK.
    alert.addAction(UIAlertAction(title: "OK", style: .default, handler: { [weak alert] (_) in
        let textField = alert?.textFields![0] // Force unwrapping because we know it exists.
        print("Text field: \(textField?.text)")
    }))

    // 4. Present the alert.
    self.present(alert, animated: true, completion: nil)
}

如果我删除addTextField代码,则警报将仅显示。否则应用程序冻结,我必须强制关闭它。我认为正在发生的是显示空白对话框或程序陷入循环。我认为这是因为该应用程序不会崩溃,并且我也没有收到任何错误消息。我唯一得到的就是这个,

XPC connection interrupted

据我所知,这意味着该应用程序超时。

我尝试过的

  • 其他视图控制器(存在相同的问题)
  • 另一个Xcode项目(存在相同的问题)
  • Xcode 10(有效)
  • 清理项目

我还没累

  • 物理iOS设备(仅模拟器)
  • 另一台使用最新版本Xcode的计算机

任何人都可以确认此错误吗?有谁知道解决此问题的方法?还是有另一种无需安装Pods即可显示带有文本字段的警报的方式(我喜欢使用尽可能多的第一方代码)。

EDIT1 :我认为一般来说,这可能只是文本字段。我只是通过在视图控制器中使用文本字段来解决问题,但我仍然遇到同样的问题。我也很累清理项目和重建。同样的事情发生了。可能会卸载并重新安装Xcode。如果这样不起作用,则可能必须尝试安装Beta版本。

EDIT2 :我有一个疯狂的想法去做一些有意义的事情。我将操作系统更新为Catalina,从而解决了该问题。如果有人知道为什么会这样,我将有兴趣找出答案。假设这与某种形式的缓存有关。

1 个答案:

答案 0 :(得分:2)

我最近有一个类似的问题,显然是苹果确认的一个错误:https://forums.developer.apple.com/thread/122972

有一个解决方法,包括在模拟器上禁用粘贴板同步。

取消选中“编辑”->“自动同步粘贴板”中的选项

重新启动模拟器。