Ich habe eine Schaltfläche programmgesteuert erstellt und möchte einen Touch-Ereignishandler hinzufügen. Ich habe alle Tricks ausprobiert, die ich online gefunden habe, aber die gewünschte Funktion wird nie ausgelöst.Swift - UIButton erstellt programmatisch löst kein Berührungsereignis
upgradeNowView = UIButton()
upgradeNowView.setTitle("Upgrade", forState: .Normal)
upgradeNowView.contentMode = UIViewContentMode.ScaleToFill
upgradeNowView.frame = CGRect(x: upgradeNowView.frame.minX, y: -50 , width: 320, height: 50)
upgradeNowView.userInteractionEnabled = true
upgradeNowView.sendActionsForControlEvents(.TouchUpInside)
upgradeNowView.addTarget(self, action: #selector(MainViewContainer.upgradeTapped(_:)), forControlEvents: .TouchUpInside)
side_menu_controller?.view.addSubview(upgradeNowView)
und definiert diese
func upgradeTapped(sender: UIButton)
{
UpgradeViewController.openUpgrade()
}
Aber das wird einfach nie genannt. Jede Hilfe wäre willkommen.
Ihr Selektor befindet sich auf 'MainViewContainer' und der Button befindet sich in' side_menu_controller' –