Хотя в документации это указано (объявлено как необязательное), свойство text
на самом деле не равно nil
( По умолчанию это строка "@" ").
Рекомендую дополнительно проверить наличие пустой строки.
@IBAction func myButton(_ sender: Any) {
guard let text = textField.text, !text.isEmpty else { return }
performSegue(withIdentifier: "theSegue", sender: sender)
}