2017-03-28 8 views
0

最近私は自由な時間にアプリケーションを作成する方法を学んできました。私は、AppleのSwiftのマニュアルと一緒に、アプリケーションの作成に関するチュートリアルを続けてきました。 「コードをUIに接続する」チュートリアルを終了した後、シミュレータを実行しましたが、私の「AppDelegate」クラスでSIGABRT例外を受け取るだけでした。私は、コンソールを見て、それは言う:Xcodeのシグナルアボート(SIGABRT)例外

がキャッチされない例外により 'NSInvalidArgumentException'、理由にアプリを終了: -

'認識されていないセレクタがインスタンス 0x7fb572d0a040に送信された[ nameTextFieldがFoodTracker.ViewController::]'

オリジナルのファイルを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 
} 

} 
+0

storyBoardの 'nameTextField'接続を確認しますか? – Joe

+2

後ろのセミコロンは、あなたがストーリーボードからIBOutletの代わりにIBActionを設定したのかどうか疑問に思います。ジョーが言ったように、あなたのストーリーボードをチェックし、あなたの接続に感嘆符があるかどうかを確認してください。 – Anand

+0

感嘆符は表示されません。 – Grilled

答えて

0

私は私のコメントで述べたように、あなたは、コードのバインディングに矛盾するストーリーボードを持っています。以下のスクリーンショットは、Xcodeが苦情を申し立てる感嘆符を示しています。削除して再追加してください。

enter image description here

+0

ありがとうございました。 – Grilled

+0

これが役に立った場合は、それを他人に役立てるために回答としてマークしてください。 – Anand

関連する問題