Как удалить нижнее заполнение по умолчанию из представления списка в SwiftUI

Я пытаюсь удалить нижнее заполнение в представлении списка, когда после него определяется другое представление, чтобы представление списка располагалось поверх другого. Без наложения. Кажется, что из списка создано дополнительное пространство, и я не уверен, как удалить его, чтобы достичь того, что я хочу. Вот что у меня есть.

      List {
    ForEach(0...2, id: \.self) { color in
        Text("\(color)")
    }.listRowInsets(EdgeInsets())
}

Rectangle().fill(Color.red)

Вот как это выглядит. Вы можете видеть, что между строкой 2 и красным прямоугольником есть промежуток. Я бы хотел, чтобы границы этих двух представлений прилегали друг к другу.

РЕДАКТИРОВАТЬ: Я пробовал встроить код в VStack, но это не устраняет белый пробел, который мы видим ниже.

Глядя на этот ответ , кажется, что упаковка списка в VStack устранит пробел, но это не из того, что мы видим здесь?

      VStack(spacing: 0) {
    VStack(spacing: 0) {
        List {
            ForEach(0...0, id: \.self) { number in
                Text("1")
                    .listRowBackground(Color.blue)
                Text("2")
            }.listRowBackground(Color.gray)
        }
    }

    VStack(spacing: 0) {
        HStack(spacing: 0) {
            Rectangle()
                .fill(Color.red)
            Rectangle()
                .fill(Color.red)
        }
        HStack(spacing: 0) {
            Rectangle()
                .fill(Color.red)
            Rectangle()
                .fill(Color.red)
        }
    }
    .aspectRatio(1.0, contentMode: .fill)

    VStack {
        List {
            Text("1")
                .listRowBackground(Color.purple)
            Text("2")
                .listRowBackground(Color.pink)
            Text("3")
                .listRowBackground(Color.blue)
            Text("4")
                .listRowBackground(Color.orange)
        }
    }
}

Я пробовал несколько вариантов VStacks с интервалом, равным 0, и не нашел, как удалить этот пробел, созданный представлением списка. Если добавлено больше строк, он начинает заполняться, но я пытаюсь разместить две строки без белого промежутка над красным прямоугольником.

Мы видим, что в представлении списка, выделенном ниже, есть этот пробел.

0 ответов

Другие вопросы по тегам