Я использую прокрутку для своих topCardView и BottomView. Когда я пытаюсь прокручивать каждый раз, выдается ошибка о недопустимых размерах кадра или иногда он зависает. Привязанная настройка SizePreferenceKey пыталась обновиться несколько раз за кадр.
Как это исправить? Я очень ценю любую помощь.
Мой завершенный код:
Код: Выделить всё
import SwiftUI
struct ContentView: View {
var body: some View {
ScrollView(.vertical, showsIndicators: false, content: {
GeometryReader { reader in
topCardView
.offset(y: -reader.frame(in: .global).minY)
.frame(width: reader.size.width, height: reader.frame(in: .global).minY + 450)
}
.frame(height: 450)
VStack(spacing: 40) {
BottomView
}
.padding(.vertical, 32)
.padding(.horizontal, 16)
.background(
Color(red: 232/255, green: 230/255, blue: 225/255)
.cornerRadius(40)
)
.offset(y: -25)
})
}
@ViewBuilder
private var topCardView: some View {
ScrollView(.horizontal, showsIndicators: false) {
LazyHGrid(rows: Array(repeating: GridItem(), count: 1), spacing: 20) {
ForEach(0..
Источник: [url]https://stackoverflow.com/questions/78140433/adjusting-scrollview-gives-error-with-offset[/url]
Мобильная версия