我知道这GeometryReader
会占用所有可用空间
但是为什么他们将他们的内容(子视图)锚定到 topLeading 角落?
这是我的代码
struct ContentView: View {
var body: some View {
VStack {
GeometryReader { proxy in
Text("First Stack")
.foregroundColor(.black)
.font(.largeTitle)
}
.background(Color.red.opacity(0.4))
Text("Second Stack").background(Color.blue)
}
.background(Color.yellow.opacity(0.5))
}
}
结果是这样的
Text
有自己的大小,但为什么它锚定或对齐 topLeading
这是默认行为GeometryReader
吗?
我试着让它GeometryReader
像这样居中
struct ContentView: View {
var body: some View {
VStack {
GeometryReader { proxy in
Text("First Stack")
.position(x: proxy.frame(in: .local).midX, y: proxy.frame(in: .local).midY)
.foregroundColor(.black)
.font(.largeTitle)
}
.background(Color.red.opacity(0.4))
Text("Second Stack").background(Color.blue)
}
.background(Color.yellow.opacity(0.5))
}
}
Text
是中心的正确解决方案GeometryReader
吗?