SwiftUI - 倒计时结束后,跳转到另一个视图
Posted
技术标签:
【中文标题】SwiftUI - 倒计时结束后,跳转到另一个视图【英文标题】:SwiftUI - When the countdown is over, jump to another view 【发布时间】:2021-08-28 00:02:33 【问题描述】:倒计时结束后,我想跳转到另一个视图。 我试过navigationLink,但没有用。
这是我的代码。
struct TimerView: View
@State var timeRemaining = 5
let timer = Timer.publish(every: 1, on: .main, in: .common).autoconnect()
var body: some View
Text("\(timeRemaining)")
.font(.largeTitle)
.onReceive(timer) _ in
if self.timeRemaining > 0
self.timeRemaining -= 1
【问题讨论】:
【参考方案1】:尝试一些变体:
struct TimerView: View
@State var timeRemaining = 5
@State var jump = false
let timer = Timer.publish(every: 1, on: .main, in: .common).autoconnect()
var body: some View
NavigationView
VStack
Text("\(timeRemaining)")
.font(.largeTitle)
.onReceive(timer) _ in
if timeRemaining > 0
timeRemaining -= 1
else
jump = true
// optional stop the timer
timer.upstream.connect().cancel()
NavigationLink("", destination: Text("the other view"), isActive: $jump)
【讨论】:
以上是关于SwiftUI - 倒计时结束后,跳转到另一个视图的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI实现不同TabView标签页中任意导航层级视图之间自动相互跳转那些事儿
SwiftUI实现不同TabView标签页中任意导航层级视图之间自动相互跳转那些事儿
如何在 SwiftUI 中从一个详情页跳转到另一个详情页并返回列表页?