当我在具有很多行的列表中包含一个步进器时,它会在滚动时从屏幕上滚动下来,从而使布局变得完全混乱。请参阅附件图像。
有人遇到过这个问题并设法解决了吗?
要在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()
})
}
}
}
预先感谢, 马特
答案 0 :(得分:0)
您不是遇到此问题的人。列表有一些问题,但仅在画布中。根据{{3}}的说法,您可以在真实设备上尝试使用您的列表,并且列表应该看起来正常。所以我在iPhone 7上尝试过: