swift - UI 文本字段? XCode 7 更新后无法转换为 'UITextField'

标签 swift xcode6 swift2 ios9 xcode7

更新到 XCode 7 后,我收到此错误“UITextField? 无法转换为 'UITextField”。我很困惑为什么它突然无法转换。有什么想法吗?

     let saveAction = UIAlertAction(title: "Search",
        style: UIAlertActionStyle.Default,
        handler: {(action) in
            let query =
            (alertController.textFields?[0] as UITextField).text ### errors here
            let tag = query
            if !query.isEmpty {
                if self.model.queryForTag(tag) != nil {
                }
                else if isNew {
                    self.model.saveQuery(
                        query, forTag: tag, syncToCloud: true)
                    let indexPath =
                    NSIndexPath(forRow: 0, inSection: 0)
                    self.tableView.insertRowsAtIndexPaths([indexPath],
                        withRowAnimation: .Automatic)
                    self.forceSearch(indexPath)
                    self.tableView.reloadData()
                }
            }
    })

最佳答案

正确打开您的选项。它将修复大部分错误。 文本字段查询都将在guard语句之后可用

let saveAction = UIAlertAction(title: "Search",
    style: UIAlertActionStyle.Default,
    handler: {(action) in

        guard let textFields = alertController.textFields, let first = textFields.first, let query = first.text else {
            return
        }

})

附: guard 声明也将有助于您不断增长的金字塔。

关于swift - UI 文本字段? XCode 7 更新后无法转换为 'UITextField',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32816045/

相关文章:

ios - Mogenerator 是否适用于 Xcode 6?

swift - 我的函数 swift 2 有很多错误

json - Swift 从应用程序包外部的文件中读取 json

swift - 自动布局:ViewDidAppear 中的框架大小不正确

ios - Firebase 和 iOS : FIRAuthInternalErrorDomain "MISSING_IDENTIFIER" when trying to login with custom token

ios - 如何创建可无线安装的 iOS 7 应用程序

swift - 为什么没有为可选数组定义 Equatable

iOS 9 Swift 2.0 如何获得通知以便当用户向另一个用户发送消息时他们会收到通知?

ios - 如何使用 Swift 4 中的 WKWebView 在 Web 应用程序中指定设备的用户代理?

swift - Google SignIn : GIDSignIn. sharedInstance().hasAuthInKeychain() 返回 false 为什么?