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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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