SwiftUI 如何通过Button控制NavigationView的切换

SwiftUI 如何通过Button控制NavigationView的切换

想做个小实验,希望实现通过button来控制视图的切换。Google好半天,才找到一个解决方案,可以运行,但是感觉代码不够优雅。

import SwiftUI

struct ContentView: View {
    @State var selection: Int? = nil
    var body: some View {
        NavigationView{
            List{
                NavigationLink(destination: TextDemoView(), tag: 1, selection: $selection) {
                    Button(action:{
                        print("hello text")
                        self.selection = 1
                        
                    }){
                        Text("  Text 文本框  ")
                            .foregroundColor(.white)
                            .background(Color.purple)
                            .cornerRadius(10)
                            .shadow(radius: 4)
                    }
                }
            }
            .navigationBarTitle(Text("基础控件"))
        }
        
    }
}

参考代码

https://stackoverflow.com/questions/57799548/navigationview-and-navigation-link-on-button-click-swift-ui

更多SwiftUI教程和代码关注专栏

发布了637 篇原创文章 · 获赞 4 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/iCloudEnd/article/details/104059678