gpt4 book ai didi

swift - 在 SwiftUI 中连续重复操作

转载 作者:搜寻专家 更新时间:2023-11-01 06:11:19 26 4
gpt4 key购买 nike

如何使文本字段等元素连续放大然后缩小?

我有这个:

struct ContentView : View {
@State var size:Double = 0.5

var body: some View {
ZStack {
Text("Hello!")
.padding()
.scaleEffect(size)
}
}
}

我知道我需要增加大小然后在某种循环中减少它,但在 SwiftUI 中无法完成以下操作:

while true {

self.size += 0.8
sleep(0.2)
self.size -= 0.8

}

最佳答案

一个可能的解决方案是使用(重复、自动反转)动画:

struct ContentView : View {
@State var size: CGFloat = 0.5

var repeatingAnimation: Animation {
Animation
.easeInOut(duration: 2) //.easeIn, .easyOut, .linear, etc...
.repeatForever()
}

var body: some View {
Text("Hello!")
.padding()
.scaleEffect(size)
.onAppear() {
withAnimation(self.repeatingAnimation) { self.size = 1.3 }
}
}
}

关于swift - 在 SwiftUI 中连续重复操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56509058/

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