您可以利用GeometryReader
。将阅读器包裹在所有其他视图周围,并使用其闭合值metrics
计算高度:
let propHeight = metrics.size.height * 0.43
如下使用它:
import SwiftUI
struct ContentView: View {
var body: some View {
GeometryReader { metrics in
VStack(spacing: 0) {
Color.red.frame(height: metrics.size.height * 0.43)
Color.green.frame(height: metrics.size.height * 0.37)
Color.yellow
}
}
}
}
import PlaygroundSupport
PlaygroundPage.current.liveView = UIHostingController(rootView: ContentView())