最近私は自由な時間にアプリケーションを作成する方法を学んできました。私は、AppleのSwiftのマニュアルと一緒に、アプリケーションの作成に関するチュートリアルを続けてきました。 「コードをUIに接続する」チュートリアルを終了した後、シミュレータを実行しましたが、私の「AppDelegate」クラスでSIGABRT例外を受け取るだけでした。私は、コンソールを見て、それは言う:Xcodeのシグナルアボート(SIGABRT)例外
'認識されていないセレクタがインスタンス 0x7fb572d0a040に送信された[ nameTextFieldがFoodTracker.ViewController::]'がキャッチされない例外により 'NSInvalidArgumentException'、理由にアプリを終了: -
オリジナルのファイルをAppleのファイルに置き換えて、違いがあるかどうかを確認しました(いくつかの追加のコメントを除いてはありません)。ここに私のViewControllerクラスファイルです:
class ViewController: UIViewController, UITextFieldDelegate {
//MARK: Properties
@IBOutlet weak var nameTextField: UITextField!
@IBOutlet weak var mealNameLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// Handle the text field’s user input through delegate callbacks.
nameTextField.delegate = self
}
//MARK: UITextFieldDelegate
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
// Hide the keyboard.
textField.resignFirstResponder()
return true
}
func textFieldDidEndEditing(_ textField: UITextField) {
mealNameLabel.text = textField.text
}
}
storyBoardの 'nameTextField'接続を確認しますか? – Joe
後ろのセミコロンは、あなたがストーリーボードからIBOutletの代わりにIBActionを設定したのかどうか疑問に思います。ジョーが言ったように、あなたのストーリーボードをチェックし、あなたの接続に感嘆符があるかどうかを確認してください。 – Anand
感嘆符は表示されません。 – Grilled