Я пытаюсь создать вид, который будет анимировать другой вид контента в нижней части экрана. Приведенный ниже код работает, однако, поскольку представление контента будет иметь неизвестную высоту, смещение 200 может быть неправильным. Как я могу получить высоту содержимого, чтобы правильно сместить вид?
struct Test<Content>: View where Content : View {
@State var showing: Bool = false
var content: Content
var body: some View {
VStack {
Button(action: {
withAnimation {
self.showing.toggle()
}
}) {
Text("Toggle")
}
Spacer()
HStack {
Spacer()
content
Spacer()
}
.background(Color.red)
.padding(10)
.offset(y: showing ? 200 : 0)
}
}
}