我需要在 VStack 中获取多个视图的框架。我认为使用,GeometryReader
但它只为父级返回必要的参数。如何在下面的屏幕截图中获取每个视图的这些参数?
问问题
925 次
1 回答
1
我们可以在所需视图的覆盖层内使用 GeometryReader,并将必要的帧存储在数组中或作为单独的变量。
ForEach(0..<n) { number in
YourView()
.overlay(
GeometryReader { geometry in
Color.clear
.onAppear {
self.buttonFrames[number] = geometry.frame(in: .global)
}
}
)
}
有关更多详细信息,您可以查看此来源:https ://github.com/twostraws/SwiftOnSundays/blob/master/020%20Switcharoo/Project/Switcharoo/ContentView.swift 和完整教程: https: //www.youtube。 com/watch?v=ffV_fYcFoX0
于 2020-04-21T16:38:52.223 回答