美文网首页SwiftUI
SwiftUI 页面跳转push/pop

SwiftUI 页面跳转push/pop

作者: 佐佑卟份 | 来源:发表于2020-07-28 16:23 被阅读0次

    在SwiftUI中如果需要进入一个新的页面,可以使用NavigationLink,举例如下

    var body: some View {
         NavigationView {
            NavigationLink(destination: Detail()) {
                Text("first")
            }
        }
    }
    

    依据OC的理解,push需要一个UINavigationController,此处就是NavigationView,然后需要点击跳转的地方用navigationLink包起来

    如果开发中把预览页面关了,可以在此处打开预览 Editor > Canvas

    关于自定义Pop事件其实navigationLink是带了参数用于控制的,举例如下

    @State var isShow = false
    var body: some View {
        NavigationView {
            NavigationLink(destination: Detail(), isActive: self.$isShow) {
                Text("first")
            }
        }
     }
    

    在第一个页面定义了一个参数isShow,在navigationLink的isActive作为入参,然后在第二个页面代码参考如下

        @Binding var showing :Bool
        
        var body: some View {
            Button("点击返回2") {
                self.showing = false
            }
        }
    

    根据绑定的属性变化来控制first页面的isShow,来控制pop事件

    相关文章

      网友评论

        本文标题:SwiftUI 页面跳转push/pop

        本文链接:https://www.haomeiwen.com/subject/frbfrktx.html