Sobes.tech
Junior — Middle

Jak podzielić ekran na trzy równe części za pomocą trzech View?

sobes.tech AI

Odpowiedź od AI

Aby podzielić ekran na trzy równe części za pomocą trzech UIView w iOS, można użyć Auto Layout i ustawić każdemu z trzech widoków taką samą wysokość (lub szerokość, jeśli dzielimy poziomo) i ułożyć je jeden pod drugim (lub obok siebie).

Przykład z układem pionowym:

let view1 = UIView()
let view2 = UIView()
let view3 = UIView()

// Dodaj do superwidoku
superview.addSubview(view1)
superview.addSubview(view2)
superview.addSubview(view3)

// Wyłącz maskę autoresizing
view1.translatesAutoresizingMaskIntoConstraints = false
view2.translatesAutoresizingMaskIntoConstraints = false
view3.translatesAutoresizingMaskIntoConstraints = false

NSLayoutConstraint.activate([
    // Powiąż view1 z górną krawędzią superwidoku
    view1.topAnchor.constraint(equalTo: superview.topAnchor),
    view1.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
    view1.trailingAnchor.constraint(equalTo: superview.trailingAnchor),

    // view2 pod view1
    view2.topAnchor.constraint(equalTo: view1.bottomAnchor),
    view2.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
    view2.trailingAnchor.constraint(equalTo: superview.trailingAnchor),

    // view3 pod view2
    view3.topAnchor.constraint(equalTo: view2.bottomAnchor),
    view3.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
    view3.trailingAnchor.constraint(equalTo: superview.trailingAnchor),
    view3.bottomAnchor.constraint(equalTo: superview.bottomAnchor),

    // Wszystkie trzy widoki mają tę samą wysokość
    view1.heightAnchor.constraint(equalTo: view2.heightAnchor),
    view2.heightAnchor.constraint(equalTo: view3.heightAnchor)
])

W ten sposób ekran zostanie podzielony na trzy równe części w pionie.