2017-08-09 10 views
0

現在、UIBarButtonItemを持つnavbarがあります。アクションを追加しました。ここではとてもシンプルなものです。何らかの理由で、決して関数を実行しません。私は、ボタンがタップされているが何も表示されていないかどうかを調べるために、関数内に単純なprintステートメントを入れました。NavBar(ストーリーボード)のUIBarButtonItemにアクション関数を追加するios

私は現在navigation controllerを使用していませんが、私はそれを使用することが賢明かもしれないことを読みました。なぜこれが単純なnavbarUIBarButtonItemで動作しないのか不思議です。ストーリーボードは、この

機能には、以下のように単純で拒否される理由がなければならない:

@IBAction func didTap(_ sender: UIBarButtonItem) { 
    print("button tapped") 
} 
+0

あなたはストーリーボードにあるボタンで、このIBActionを添付しました? – Adeel

+0

ええ、私は持っています。私はこの質問をする前に添付されていることを確認しました – halapgos1

答えて

0

これを使用してみてください:

override func viewDidLoad() { 
     super.viewDidLoad() 
     //custom bar button 
     let btn1 = UIButton() 
     btn1.setImage(UIImage(named: "back"), for: .normal) 
     btn1.frame = CGRect(x:0, y:0, width:15, height:20) 
     btn1.addTarget(self, action: #selector(popHome), for: .touchUpInside) 
     self.navigationItem.setLeftBarButton(UIBarButtonItem(customView: btn1), animated: true); 

    } 

    func popHome(){ 
     //you action code 
    } 
+0

私はそれをプログラムで行うことができますが、私はストーリーボードでそれを行う方法が不思議でした。このアクションがナビゲーションバーに関連付けられていない理由が必要です – halapgos1

関連する問題