IBOutlet et IBAction en Swift
J'ai connecté un IBOutlet
et IBAction
à mon bouton variables d'Interface Builder pour mon point de Vue Contrôleur. Comment puis-je ajouter une méthode d'action pour le bouton dans la Swift?
Ce code ne semble pas fonctionner.
@IBOutlet var OK: UIButton!
@IBAction func OK(sender: UIButton){}
L'Objective-C équivalent que j'ai trouvé est:
@interface Controller
{
IBOutlet id textField; //links to TextField UI object
}
- (IBAction)doAction:(id)sender; // e.g. called when button pushed
OriginalL'auteur linux-user | 2015-09-14
Vous devez vous connecter pour publier un commentaire.
Lorsque vous attachez un bouton à la
viewController
, et de créer une action (IBAction
) à l'aide de appuyez sur la touche ctrl, vous créez une méthode (appelée aussi une fonction) qui ressemble à s'aime cela, en Swift (si il dose pas d'arguments):En objective-C la même chose ressemblera à ceci:
Cela signifie donc que
@IBAction func OK(sender: UIButton){}
est une méthode d'action.Si vous voulez savoir à propos de l'expéditeur argument, je vous recommande cette DONC post.
Edit:
Pour ce que vous voulez faire, j'ai créer un
IBOutlet
et unIBAction
, de cette façon, je peux modifier les attributs de la sortie variable, et ont le côté action de choses avec laIBAction
, à l'instar de ce que vous montrer ci-dessus:Par exemple, si je veux cacher le bouton, j'en ai mis ce code dans le
viewDidLoad
Le OK de ce code est de la prise de courant variable, si je voulais imprimer "Vous avez appuyé sur moi" sur la console lorsque le bouton est pressé, je voudrais utiliser ce code:
Ci-dessus, je suis en utilisant l'action d'imprimer "Vous avez appuyé sur moi" de la console.
Quelques choses à noter:
Lorsque Swift 2.0 est libéré
println
aurez changé deprint
. Avec vous aussi de l'action et de la sortie, je suggère de leur donner différents noms, pour le rendre plus facile de différencier les deux, quelque chose comme ceci:Avec cela, vous devez utiliser chameau cas dans les noms de variables, de constantes, de fonctions, etc.
OriginalL'auteur Caleb Kleveter
Une façon de le faire glisser à partir de votre bouton de votre viewcontroller et de choisir une action:
Si vous avez connecté votre bouton d'action, votre code devrait fonctionner parfaitement.
Qui fonctionne. Grâce Prontto
OriginalL'auteur Prontto
Voici les étapes que vous pouvez suivre
Pour
@IBOutlet
1.Déclarer Votre Interface builder Élément droit de propriété après le nom de la classe
2.Le crochet de l'IB Élément De Storyboard.
Pour
@IBAction
1.Écrire Une méthode à l'intérieur de votre classe(disons
SomeViewController
)2.Crochet de la méthode de Storyboard.
Espère que ça pourrait aider.
OriginalL'auteur Tunvir Rahman Tusher
Vous pouvez simplement ajouter une action à partir de votre storyboard. Voir l'image.
OriginalL'auteur ridvankucuk