Détails du sujet

ViewControllers, UIButton, UILabel

Mémoriser les fonctions essentielles de UIKit.

Toutes les cartes

Supprimer un ViewController

self.dismiss(animated: true, completion: nil)

Déclarer un IBOutlet pour un UIButton

@IBOutlet var myButton: UIButton!

Dans ce cas, l'IBOutlet doit être connecté à un objet dans Interface Builder, sinon c'est une erreur à l'execution.

Sinon, on peut aussi utiliser un optional UIButton?


Ajouter une sous-vue à une vue

myView.addSubview(mySubView)

Comment intercepter la transition d'un ViewController à un autre ?

Definir un identifiant au Storyboard Segue dans Interface Builder

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "segueName" {
// do something
     }
  }

Le cycle de vie des vues


Changer la couleur de fond de la vue en bleu

self.view.backgroundColor = UIColor.blue
// ou
self.view.backgroundColor = UIColor(red: 0, green: 0, blue: 1, alpha: 1)

Changer le texte d'un UIButton pour l'état normal.

myButton.setTitle("Hello", for: .normal)
// et non pas myButton.text = ...

Changer l'image de fond d'un UIButton

let myImage = UIImage(named: "myimage.png")
myButton.setBackgroundImage(myImage, for: .normal)

Définir le texte d'un UILabel

myLabel.text = "Hello"

Ajuster automatiquement la taille de la police d'un UILabel

myLabel.adjustsFontSizeToFitWidth = true

Changer la couleur d'un UILabel en rouge

myLabel.textColor = UIColor.red

Où doit-on placer les actions d'initialisation d'une vue qui ne doivent être exécutées qu'une fois pour un ViewController ?

dans viewDidLoad


Où doit-on placer les actions qui doivent être effectuées à chaque fois qu'une vue apparaît ?

dans viewWillAppear ou viewDidAppear


Créer une fonction qui sera exécutée à partir d'un objet dans Interface Builder.

@IBAction func myAction () {
}