selector macht nichts

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • selector macht nichts

    ich habe ein Problem mit Swift4 und den Klick-Listenern an Buttons:


    In einer beliebigen Klasse steht dieser Code

    ...

    self.tabButton1.addTarget(self, action: #selector(self.onButtonClicked), for: .touchUpInside)
    self.tabButton2.addTarget(self, action: #selector(self.onButtonClicked), for: .touchUpInside)
    self.tabButton3.addTarget(self, action: #selector(viewController.onButtonClickedVC), for: .touchUpInside)
    self.tabButton4.addTarget(self, action: #selector(viewController.onButtonClickedVC), for: .touchUpInside)
    }

    @ObjC func onButtonClicked (_ sender: AnyObject?)
    {

    print ("MyClass: onButtonClicked")

    ...

    und im ViewController zusätzlich dieser:

    ...

    @ObjC func onButtonClickedVC (_ sender: AnyObject?)
    {
    print ("ViewController: onButtonClickedCV")
    ...

    Der Code macht folgendes Seltsames:

    Die Listener an tabButton3 und tabButton4 funktioniren, und rufen bei Buttonclick die Methode onButtonClickedVC im ViewController auf.

    Die Listener an tabButton1 und tabButton2 machen gar nichts. Warum?


    Any idea?
  • Was kann ich denn unter "In einer beliebigen Klasse steht dieser Code" verstehen?

    Dies scheint ja nicht die ViewController Klasse zu sein. Allerdings gibt es dort die Outlets tabButton1 bis tabButton4, die ich eher im ViewController vermutet hätte.

    Warum soll sich onButtonClicked nicht auch in der ViewController Klasse befinden?