在我的 SwiftUI 應用程式中,我有一個帶有嵌套 ScrollView 的串列,因為我已經將我的 iPhone 更新到 iOS 16,所以主串列上的重繪 有一個奇怪的行為。似乎每個 ScrollView 都有自己的重繪 。問題是我在主串列上應用了 .refreshable 修飾符,而不是在嵌套串列上。
在 iOS 16 之前,該問題不存在。那么,是一個錯誤還是我們可以通過某種方式修復它?
這是代碼和一個簡短的視頻:
List {
VStack(alignment: .leading) {
Text("Line 1")
.font(.title)
ScrollView(.horizontal, showsIndicators: false) {
LazyHStack(spacing: 20) {
Text("Item 1")
Text("Item 2")
Text("Item 3")
Text("Item 4")
Text("Item 5")
Text("Item 6")
Text("Item 7")
Text("Item 8")
Text("Item 9")
Text("Item 10")
}
.frame(height: 180)
}
}
.listRowSeparator(.hidden)
VStack(alignment: .leading) {
Text("Line 2")
.font(.title)
ScrollView(.horizontal, showsIndicators: false) {
LazyHStack(spacing: 20) {
Text("Item 1")
Text("Item 2")
Text("Item 3")
Text("Item 4")
Text("Item 5")
Text("Item 6")
Text("Item 7")
Text("Item 8")
Text("Item 9")
Text("Item 10")
}
.frame(height: 180)
}
}
.listRowSeparator(.hidden)
}
.listStyle(.plain)
.refreshable {
print("refresh!")
}

uj5u.com熱心網友回復:
如果您將您的Listfor a更改為ScrollView,然后將行更改.listStyle(.plain)為.padding(.horizontal),它將可以正常作業而沒有錯誤。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/519932.html
