Проблемы SwiftUI Stepper Layout - PullRequest
       10

Проблемы SwiftUI Stepper Layout

0 голосов
/ 15 января 2020

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

Кто-нибудь имел эту проблему и сумел решить?

Код для воспроизведения в Xcode 11.3.1 / iOS 13.3

struct Item: Identifiable {
    let id: String
    let name: String

    init(_ name: String) {
        self.id = UUID().uuidString
        self.name = name
    }
}

struct ContentView: View {

    let items: [Item] = [
        Item("Car"),
        Item("Shoe"),
        Item("House"),
        Item("Pencil"),
        Item("Crayon"),
        Item("PC"),
        Item("Spoon"),
        Item("Box"),
        Item("Tennis Racket"),
        Item("Mobile Phone"),
        Item("Hat"),
        Item("Table"),
        Item("Chair"),
        Item("Painting"),
        Item("Couch"),
        Item("Desk"),
        Item("Fireplace"),
        Item("Stove"),
        Item("Kettle"),
        Item("Fork"),
        Item("Knife"),
        Item("Dinner Plate")
    ]

    var body: some View {
        List() {
            ForEach(items) { item in
                ItemRow(item: item)
            }
        }
    }
}

struct ItemRow: View {
    let item: Item

    @State private var quantity: Int = 1

    var body: some View {
        HStack(spacing: 10) {
            Text(item.name)
            Stepper(onIncrement: {
                self.quantity = self.quantity + 1
            }, onDecrement: {
                self.quantity = self.quantity - 1
            }, label: {
                Text("\(quantity)")
                    .padding()
            })
        }
    }
}

Заранее спасибо, Мэтт

Stepper Layout Issue

1 Ответ

0 голосов

Вы не тот, кто с этой проблемой. Существует некоторая проблема со списком, но только на холсте. Согласно этому ответу , вы можете попробовать свой список на реальном устройстве, и он должен выглядеть в обычном режиме. Поэтому я попробовал на iPhone 7:

enter image description here

...