代码拉取完成,页面将自动刷新
SwiftUI的双向绑定使我们可以调整程序的状态,并且可以通过调整视图层次结构来对此做出响应。 例如,我们可能使某些文本出现或消失,或者调整视图的不透明度。
除了可以立即进行状态更改外,我们还可以对绑定进行动画处理,方法是通过向其绑定中添加 animation()
来修改绑定。 例如,此视图具有一个切换,该切换根据切换的阶段显示或隐藏文本视图:
struct ContentView: View {
@State private var showingWelcome = false
var body: some View {
VStack {
Toggle("Toggle label", isOn: $showingWelcome)
if showingWelcome {
Text("Hello World")
}
}
}
}
没有动画,文本视图将立即出现或消失,从而导致视觉跳转。 如果我们修改切换开关,使其绑定到 $showingWelcome.animation()
,则文本视图将平滑滑动:
struct ContentView: View {
@State private var showingWelcome = false
var body: some View {
VStack {
Toggle("Toggle label", isOn: $showingWelcome.animation())
if showingWelcome {
Text("Hello World")
}
}
}
}
如果要对动画进行更多控制,可以将参数传递给 animation()
,这些参数会影响过渡的发生方式。 例如,这将使文本带有一个简单的 spring
动画:$showingWelcome.animation(.spring())
。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。