SwiftUI中的多个NavigationLink

时间:2019-07-27 13:43:06

标签: swiftui

SwiftUI中可以有多个NavigationLink吗?以下仅显示第一个链接:

struct Test : View {
    var body: some View {
        NavigationView {
            NavigationLink(destination: Text("First")) {
                Text("Visible")
            }
            NavigationLink(destination: Text("Second")) {
                Text("Invisible")
            }
            //EDIT: Also Invisible
            Text("Not rendered")
        }
    }
}

编辑:结果显示第一个NavigationLink下的所有内容都不显示

2 个答案:

答案 0 :(得分:1)

将视图放入VStack中

struct Test : View {
    var body: some View {
        NavigationView {
            VStack {
                NavigationLink(destination: Text("First")) {
                    Text("Visible")
                }

                NavigationLink(destination: Text("Second")) {
                    Text("Invisible")
                }
                //EDIT: Also Invisible
                Text("Not rendered")
            }
        }
    }
}

答案 1 :(得分:-1)

看起来您肯定可以有多个NavigationLink,但是您在这里做错了一件事。

body属性返回一个视图,但是在这里您试图返回多个视图,这会导致错误。

要解决此问题,我们将它们放在另一个视图中,例如VStack或HStack,如上面kontiki给出的答案所示。