Junior
V jakém pořadí jsou při volání metody addSubview přidávány vrstvy (subviews)?
sobes.tech AI
Odpověď od AI
Pohledy jsou přidávány nad všechny stávající podřízené pohledy ve stejném pořadí, v jakém bylo voláno addSubview. Tím pádem bude poslední přidaný pohled nejvyšší v hierarchii podřízených pohledů tohoto UIView.
Vizuálně to znamená, že poslední přidaný pohled překryje předchozí, pokud se jejich rámy překrývají.
Příklad přidávání pohledů:
// Vytvoření rodičovského pohledu
let parentView = UIView(frame: CGRect(x: 0, y: 0, width: 200, height: 200))
parentView.backgroundColor = .lightGray
// Vytvoření prvního pohledu
let firstView = UIView(frame: CGRect(x: 20, y: 20, width: 100, height: 100))
firstView.backgroundColor = .red
// Vytvoření druhého pohledu
let secondView = UIView(frame: CGRect(x: 50, y: 50, width: 100, height: 100))
secondView.backgroundColor = .blue
// Přidání prvního pohledu. Bude první v subviews
parentView.addSubview(firstView)
// Přidání druhého pohledu. Bude druhý v subviews a bude nad prvním
parentView.addSubview(secondView)
// Nyní parentView.subviews bude obsahovat [firstView, secondView]
Pořadí v poli subviews rodičovského pohledu odráží pořadí vrstvení na ose Z. První prvek je dole, poslední nahoře.