SwiftUI: отображение строк переменной длины в LazyVGrid

Я пытаюсь построить вертикальную сетку строк переменной длины, которые будут отображаться рядом друг с другом (например, набор тегов социальных сетей), следующим образом:

       struct ContentView: View {
    let data = ["first text",
    "second text",
    "long text for testing",
    "short",
    "some medium text"
    ]
    let gridItem = GridItem(.adaptive(minimum: 40, maximum: 300))
    var body: some View {
        ScrollView {
            LazyVGrid(columns: [gridItem]) {
                ForEach(data, id:\.self) { item in
                    Text(item)
                        .lineLimit(1)
                        .background(Color.red)
                }
            }
        }
    }
}

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

Результат для приведенного выше кода:

Мой вопрос: как я могу отобразить любой динамический список строк переменной длины в вертикально прокручиваемом виде в SwiftUI?

0 ответов

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