Sobes.tech
Junior — Middle

Как да разделите екрана на три равни части с помощта на три View?

sobes.tech AI

Отговор от AI

За да разделите екрана на три равни части с помощта на три UIView в iOS, можете да използвате Auto Layout и да зададете на всяко от трите изгледа еднаква височина (или ширина, ако делите по хоризонтал) и да ги разположите един под друг (или до един).

Пример с вертикално разположение:

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

// Добавяне към супер изглед
superview.addSubview(view1)
superview.addSubview(view2)
superview.addSubview(view3)

// Изключване на маската за автоматично преоразмеряване
view1.translatesAutoresizingMaskIntoConstraints = false
view2.translatesAutoresizingMaskIntoConstraints = false
view3.translatesAutoresizingMaskIntoConstraints = false

NSLayoutConstraint.activate([
    // Свързване на view1 с горния ръб на супер изгледа
    view1.topAnchor.constraint(equalTo: superview.topAnchor),
    view1.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
    view1.trailingAnchor.constraint(equalTo: superview.trailingAnchor),

    // view2 под view1
    view2.topAnchor.constraint(equalTo: view1.bottomAnchor),
    view2.leadingAnchor.constraint(equalTo: superview.leadingAnchor),
    view2.trailingAnchor.constraint(equalTo: superview.trailingAnchor),

    // view3 под 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),

    // Всички три изгледа имат еднаква височина
    view1.heightAnchor.constraint(equalTo: view2.heightAnchor),
    view2.heightAnchor.constraint(equalTo: view3.heightAnchor)
])

По този начин екрана ще бъде разделен на три равни по височина части.