我正在尝试使用SwiftUI实现一个ScrollView,其中包含一个HStack和一个Calendar对象的ForEach()来回滚动以选择下面要模拟的日期:
日期数组将是今天的过去30天和将来的30天。当我初始化ScrollView时,它总是从过去的30天开始(数组索引0),但是如何将ScrollView的滚动偏移到今天的日期在视图中居中的位置?我尝试使用.content.offset(x: offset)
,但实际上会偏移视图中滚动的位置,而不是滚动量。
ScrollView(.horizontal, showsIndicators: false) {
HStack(alignment: .center, spacing: self.spacing) {
ForEach(self.dateArray, id: \.self) { date in
CalendarObject(date: date)
}
}
}
.content.offset(x: -self.offset, y: 0)
答案 0 :(得分:-1)
在苹果公司的示例swiftUI代码中,他们只在ScrollView中使用单元格填充。也许这是苹果公司的答案。