Sobes.tech
Junior — Middle

Ako rozdeliť obrazovku na tri rovnaké časti pomocou troch View?

sobes.tech AI

Odpoveď od AI

Ak chcete rozdeliť obrazovku na tri rovnaké časti pomocou troch UIView v iOS, môžete použiť Auto Layout a nastaviť rovnakú výšku (alebo šírku, ak rozdeľujete horizontálne) pre každý z troch pohľadov a usporiadať ich jeden pod druhým (alebo vedľa seba).

Príklad s vertikálnym usporiadaním:

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

// Pridať do superview
superview.addSubview(view1)
superview.addSubview(view2)
superview.addSubview(view3)

// Vypnúť masku na automatické prispôsobenie
view1.translatesAutoresizingMaskIntoConstraints = false
view2.translatesAutoresizingMaskIntoConstraints = false
view3.translatesAutoresizingMaskIntoConstraints = false

NSLayoutConstraint.activate([
    // Pripojiť view1 k hornému okraju superview
    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),

    // Všetky tri pohľady majú rovnakú výšku
    view1.heightAnchor.constraint(equalTo: view2.heightAnchor),
    view2.heightAnchor.constraint(equalTo: view3.heightAnchor)
])

Týmto spôsobom bude obrazovka rozdelená na tri rovnaké časti na výšku.