我刚刚打开了最新的Xcode beta(8.3 beta 2),并且正在将我的代码转换为Swift 1.2。我遇到了我无法找出解决方案的特定代码行的问题。

基本上我得到了错误:Objective-C method 'textFieldShouldReturn:' provided by method 'textFieldShouldReturn' conflicts with optional requirement method 'textFieldShouldReturn' in protocol 'UITextFieldDelegate'

在此代码上:

@IBAction func textFieldShouldReturn(textField: UITextField!)
    {
        budgetNameText.resignFirstResponder()
    }


有人知道解决方案吗?

最佳答案

正如您在错误消息中看到的那样,已经有一个方法称为您的方法。因此,您的问题是,在UITextFieldDelegate中,还有一个名为textFieldShouldReturn的方法。因此,您需要将IBAction方法重命名为其他名称。

这是委托提供的方法:

func textFieldShouldReturn(textField: UITextField) -> Bool {
    return true
}

09-25 12:52