使用新的SwiftUI Charts框架,我们可以制作比可见屏幕更大的图表,并将其放置在ScrollView中使其可滚动。 就像这样:
var body : some View {
GeometryReader { proxy in
ScrollView(.horizontal, showsIndicators: false) {
Chart {
ForEach(data) { entry in
// ...
}
}
.frame(width: proxy.size.width * 2)
}
}
}
有人知道是否可以通过编程的方式将滚动条移动到图表的某个特定区域吗?
我尝试使用ScrollViewReader
,在x轴标签处设置ID,并试图使用scrollTo
函数导航到其中任何一个位置,但没有成功:
Chart {
/// ...
}
.chartXAxis {
AxisMarks(values: .stride(by: .day)) { value in
if let date : Date = value.as(Date.self) {
Text(date, style: .date)
.font(.footnote)
}
}
}