Junior
Dans quel ordre les vues empilées (subviews) sont-elles ajoutées lors de l'appel de la méthode addSubview?
sobes.tech IA
Réponse de l'IA
Les vues sont ajoutées au-dessus de toutes les vues enfants existantes dans le même ordre dans lequel addSubview a été appelé. Ainsi, la dernière vue ajoutée sera la plus haute dans la hiérarchie des vues enfants de ce UIView.
Visuellement, cela signifie que la dernière vue ajoutée recouvrira les précédentes si leurs cadres se croisent.
Exemple d'ajout de vues :
// Créer une vue parent
let parentView = UIView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))
parentView.backgroundColor = .lightGray
// Créer la première vue
let firstView = UIView(frame: CGRect(x: 20, y: 20, width: 100, height: 100))
firstView.backgroundColor = .red
// Créer la deuxième vue
let secondView = UIView(frame: CGRect(x: 50, y: 50, width: 100, height: 100))
secondView.backgroundColor = .blue
// Ajouter la première vue. Elle sera la première dans subviews
parentView.addSubview(firstView)
// Ajouter la deuxième vue. Elle sera la deuxième dans subviews et au-dessus de la première
parentView.addSubview(secondView)
// Maintenant, parentView.subviews contiendra [firstView, secondView]
L'ordre dans le tableau subviews de la vue parente reflète l'ordre de superposition sur l'axe Z. Le premier élément du tableau est en bas, le dernier en haut.