SwiftUI. Как настроить поведение сжатия для Spacer?IOS

Программируем под IOS
Anonymous
SwiftUI. Как настроить поведение сжатия для Spacer?

Сообщение Anonymous »

Как установить расстояние по умолчанию между видами RGB (100pt), если их контейнер (VStack) не конфликтует с нижним черным видом (например, iPhone 11 Pro Max). НО сжимается, если нет места для высоты 100p. (как iPhone SE на скриншоте)

Мой код:

Код: Выделить всё

struct ContentView: View {
var body: some View {
VStack(spacing: 0) {
VStack(spacing: 0) {
Rectangle()
.foregroundColor(.red)
.frame(height: 100)
Spacer()
.frame(minHeight: 10, maxHeight: 100)
Rectangle()
.foregroundColor(.green)
.frame(height: 100)
Spacer()
.frame(minHeight: 10, maxHeight: 100)
Rectangle()
.foregroundColor(.blue)
.frame(height: 100)
}
Spacer()
.frame(minHeight: 10, maxHeight: 600)
Rectangle() // keyboard
.frame(height: 200)
}
}
}
Итак, проблема в следующем:
Проставки с maxHeight: 100 имеют высоту = 10 (а не 100) на iPhone 11 Pro Max. (НО пространство между черным видом и VStack позволяет это)

Как реализовать поведение, которое я объяснил?

Изображение


Изображение


Подробнее здесь: https://stackoverflow.com/questions/591 ... for-spacer

Вернуться в «IOS»