J'essaie de créer une interface utilisateur par programme. Comment faire fonctionner cette action? Je développe avec Swift.
Code dans viewDidLoad:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let myFirstLabel = UILabel()
let myFirstButton = UIButton()
myFirstLabel.text = "I made a label on the screen #toogood4you"
myFirstLabel.font = UIFont(name: "MarkerFelt-Thin", size: 45)
myFirstLabel.textColor = UIColor.redColor()
myFirstLabel.textAlignment = .Center
myFirstLabel.numberOfLines = 5
myFirstLabel.frame = CGRectMake(15, 54, 300, 500)
myFirstButton.setTitle("✸", forState: .Normal)
myFirstButton.setTitleColor(UIColor.blueColor(), forState: .Normal)
myFirstButton.frame = CGRectMake(15, -50, 300, 500)
myFirstButton.addTarget(self, action: "pressed", forControlEvents: .TouchUpInside)
self.view.addSubview(myFirstLabel)
self.view.addSubview(myFirstButton)
}
func pressed(sender: UIButton!) {
var alertView = UIAlertView();
alertView.addButtonWithTitle("Ok");
alertView.title = "title";
alertView.message = "message";
alertView.show();
}
pressed
fonction prend un argument.Swift 2.2 Xcode 7.3
Étant donné que les littéraux de chaîne Objective-C sont désormais obsolètes pour les méthodes de rappel de bouton
Swift 3 Xcode 8
Swift 4 Xcode 9
la source
Swift 4/5
la source
Swift 4
la source
Ouais dans le simulateur. Parfois, il ne reconnaîtra pas le sélecteur, il semble qu'il y ait un bogue. Même si je n'ai pas fait face à votre code, j'ai juste changé le nom de l'action (sélecteur). Ça marche
Un exemple de fonction de sélection est ici:
la source
Vous devriez être en mesure de créer un bouton de personnalisation de l'interface utilisateur par programme en accédant à la propriété titleLabel de UIButton .
Référence par classe dans Swift: Concernant le titleLabel propriété , il est dit que "bien que cette propriété soit en lecture seule, ses propres propriétés sont en lecture / écriture. Utilisez ces propriétés principalement pour configurer le texte du bouton."
Dans Swift , vous pouvez modifier directement les propriétés de titleLabel comme ceci:
Éditer
Syntaxe de Swift 3.1
la source
essayez ces derniers ... j'espère que cela vous aidera ...
ce sont des boutons cliquez sur l'événement.
la source
Swift 3: vous pouvez créer un
UIButton
programmesoit à l'intérieur d'une portée de méthodes par exemple dans
ViewDidLoad()
Assurez-vous d'ajouter des contraintes au bouton, sinon vous ne le verrez pasou en dehors de votre champ d'application en tant que variable globale pour y accéder de n'importe où dans votre
module
puis vous configurez les contraintes
la source
Swift: Ui Button crée par programme,
la source
Extension Swift "Button factory" pour UIButton (et tant que nous y sommes) également pour UILabel comme ceci:
Testé dans Swift dans Xcode version 9.2 (9C40b) Swift 4.x
la source
Swift: le bouton Ui crée par programme
la source
Pour Swift 3 Xcode 8 .......
la source
UIButton avec des contraintes dans
iOS 9.1/Xcode 7.1.1/Swift 2.1
:Le bouton est ancré dans le coin inférieur gauche, au-dessus de la barre d'onglets.
la source
getCurrentLocation
nous aide à obtenir l'emplacement s'il vous plaît?Dans Swift, nous pouvons créer un bouton par programmation en écrivant ce code dans notre fichier viewcontroller.swift ...
la source
la source
Si vous allez dans la partie principale du storyboard, et en bas à droite, allez dans le cercle avec un carré et utilisez un bouton vide. Ensuite, dans le code, utilisez @IBAction avec pour le connecter. Ensuite, vous pouvez créer une fonction @IBAction avec.
la source
Swift 4.2 - XCode 10.1
Utiliser une fermeture
la source
Sous iOS 12, Swift 4.2 et XCode 10.1
la source
Swift 5.0
la source