gpt4 book ai didi

swift - SwiftUI 中的动画绑定(bind)

转载 作者:行者123 更新时间:2023-12-02 16:28:58 29 4
gpt4 key购买 nike

我有以下部分显示或隐藏 Test 的代码查看取决于 Binding<Bool> .我可以包装 testVisible.toggle()调用withAnimation , 但是,理想情况下我想确保 visible绑定(bind)始终是动画的,即使在没有 withAnimation 的情况下调用也是如此.我怎样才能确保无论何时 visible绑定(bind)改变了,改变是动画的?

struct ContentView: View {
@State var testVisible: Bool = true

var body: some View {
ZStack {
Color.white
.onTapGesture {
testVisible.toggle()
}

Test(visible: $testVisible)
}

}
}

struct Test: View {
@Binding var visible: Bool

var body: some View {
Text("Test")
.opacity(visible ? 0.5 : 0)
}
}

最佳答案

Text View 中添加一个 .animation() 修饰符:

struct Test: View {
@Binding var visible: Bool

var body: some View {
Text("Test")
.opacity(visible ? 0.5 : 0)
.animation(.linear(duration: 0.5))
}
}

关于swift - SwiftUI 中的动画绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63846681/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com