问题描述
我知道使用 .background
或 .overlay
来包装 GeometryReader
是很常见的,这样它就不会修改父视图,但在这种情况下我没有任何视图在要附加 vstack
或 .background
的 .overlay
中。我尝试使用 EmptyView
然后使用 .overlay
但我的视图消失了。
struct TestView: View {
var body: some View {
vstack {
GeometryReader { geometry in //how can I wrap this in a .overlay so it doesn't manipulate parent views?
SecondView(proxy: geometry)
}
}
}
}
解决方法
尝试 Color.clear
- 它不会让您的视图消失并保持布局。
struct TestView: View {
var body: some View {
VStack {
/// here!
Color.clear.overlay(
GeometryReader { geometry in //how can I wrap this in a .overlay so it doesn't manipulate parent views?
SecondView(proxy: geometry)
}
)
}
}
}