如何使用NavigationDestinationLink转到另一个视图?

时间:2019-07-13 02:05:19

标签: swiftui

我想使用NavigationDestinationLink转到另一个SwiftUI视图,但是它不起作用。

在这里您可以看到我要发送到我想要的页面的按钮项目的代码,但是它不起作用

var body: some View {

    Button(action: {
            if self.type == "origin"{
                NavigationDestinationLink(SelectDestination(), isDetail: true)
            } else if self.type == "destination"{

                NavigationDestinationLink(TravelCostPage())
            }
        print("Button Clicked")
    }) {
        HStack{
            Spacer()
            VStack {

                Text(title)
                    .bold()
                    .color(.black)

                    Text("توضیحات")
                        .font(.footnote)
                        .color(.gray)

                    }
                    Image("grayStarIcon")
                        .renderingMode(.original)
                        .frame(width: 30, height: 30)

                        }.padding()
                            .frame(width: UIScreen.main.bounds.width, height: 50)
                    }


}

1 个答案:

答案 0 :(得分:1)

正确的对象是NavigationLink。使用NavigationLink,您可以控制导航。请注意,NavigationLink仅在NavigationView内部有效。

因此,当您需要将导航移到另一个视图时,只需使用包含NavigationLink的{​​{1}}或其他非交互式视图。在Text内部定义的视图将作为NavigationLink

Button

高级示例:

NavigationLink(destination: DestinationView()) {
    Text("click me")
}