2016-04-24 15 views
0

私の関数はthisで、これは "done" UIBarButtonItemで呼び出されます。Swift 2/Xcode 7:インスタンスに送信された認識できないセレクタ

@IBAction func done(sender: UIBarButtonItem) { 
    dismissViewControllerAnimated(true, completion: nil) 
} 

私が削除されたインスタンスまたはInterface Builderでまたはビューコントローラのコード内の古い/余分な接続に関する複数の他の質問/回答を読みました。しかし、私はこの機能をすべて適切に接続しており、余計な接続はありません。 「インスタンスに送信された認識できないセレクタ」エラーを取り除くにはどうすればよいですか

ありがとうございます!私は左の不要な接続が

がある疑いがある問題で提供された情報では

+1

セレクタをプログラムで設定してみてください。 – NSAnant

+0

「認識できないセレクタ」のエラーには、さらに詳しい情報が記載されています。また、 'dismissViewControllerAnimated'を' UIBarButtonItem'を分離するためにコメントしてください(私は 'self'がViewControllerであると確信していますが、確かに)。 – bauerMusic

答えて

1

。できることを確認するには:

1)IBに移動してボタンを選択します。

2)ボタンを右クリックして、すべての操作を確認します。不要な操作がある場合は、削除してもう一度実行してください。あなたがのsayHello関数のパラメータをたくない場合は

あなたはまた、

この

var b = UIBarButtonItem(
    title: "Continue", 
    style: .Plain, 
    target: self, 
    action: "sayHello:" 
) 

func sayHello(sender: UIBarButtonItem) { 
} 

ようUIBarButtonItemのための目標を設定し

プログラムでそれを行うことができ、あなたはそれを

var b = UIBarButtonItem(
    title: "Continue", 
    style: .Plain, 
    target: self, 
    action: "sayHello"// Remove the colon 
) 

func sayHello() { 
} 

を行うことができます

関連する問題