Ios SwiftUI:序列导航

Ios SwiftUI:序列导航,ios,swift,swiftui,Ios,Swift,Swiftui,我正在尝试将数据从一个屏幕传递到另一个屏幕,是否可以在swiftUI中创建segue并使用下面的方法 prepare(对于segue:UIStoryboardSegue,sender:Any?我无法帮助您解决segue问题,但如果您希望将数据从一个屏幕传递到另一个屏幕,可以通过以下方式进行: 第一:在目标中创建一个var struct DestinationView : View { let information: InfoType var body: some View {

我正在尝试将数据从一个屏幕传递到另一个屏幕,是否可以在swiftUI中创建segue并使用下面的方法


prepare(对于segue:UIStoryboardSegue,sender:Any?

我无法帮助您解决segue问题,但如果您希望将数据从一个屏幕传递到另一个屏幕,可以通过以下方式进行:

第一:在目标中创建一个var

struct DestinationView : View {
    let information: InfoType
    var body: some View { ... }
}
然后,当您将此信息传递到导航按钮内时:

NavigationButton(destination: DestinationView(information: info)) {
     Text("click me")
}

很抱歉没有准确回答您的问题,但希望能有所帮助

我无法帮助您解决segue问题,但如果您希望将数据从一个屏幕传递到另一个屏幕,您可以通过以下方式进行:

第一:在目标中创建一个var

struct DestinationView : View {
    let information: InfoType
    var body: some View { ... }
}
然后,当您将此信息传递到导航按钮内时:

NavigationButton(destination: DestinationView(information: info)) {
     Text("click me")
}

很抱歉没有准确回答您的问题,但希望能有所帮助。

这就是@ObjectBinding的用武之地。如果您希望将数据从视图A传递到视图B,您可以在结构或类上使用@ObjectBinding,通过声明didChange属性使该结构或类符合BindableObject,并通过使用Combine,在进行更改时通过@ObjectBindable属性包装器将这些更改发布到视图中。否则,这将允许您拥有指向对象的引用链接

这就是@ObjectBinding的用武之地。如果您希望将数据从视图A传递到视图B,您可以在结构或类上使用@ObjectBinding,通过声明didChange属性使该结构或类符合BindableObject,并通过使用Combine,在进行更改时通过@ObjectBindable属性包装器将这些更改发布到视图中。否则,这将允许您拥有指向对象的引用链接

对于排序,您的问题的答案是“否”。在SwiftUI中这是不可能的,因为SwiftUI不使用segue在控制器之间进行转换,您可以使用
NavigationButton(destination:)
Instead。我无法想象无法创建自定义转换。那太疯狂了@TungVuDuc@LinusGeffarth:@Tung Vu-Duc没有说你不能使用过渡。。只是UIStoryboardSegue不是SwiftUI中的选项,因为这是一个UIKit概念。在SwiftUI中,您可以通过向显示的视图添加修改器来进行自定义转换
Text(“hi”).transition(AnyTransition.opacity.combined(with:.slide))
感谢@mimo的提示,我会检查一下。对于您的问题,排序答案是否。在SwiftUI中这是不可能的,因为SwiftUI不使用segue在控制器之间进行转换,您可以使用
NavigationButton(destination:)
Instead。我无法想象没有办法创建自定义转换。那太疯狂了@TungVuDuc@LinusGeffarth:@Tung Vu-Duc没有说你不能使用过渡。。只是UIStoryboardSegue不是SwiftUI中的选项,因为这是一个UIKit概念。在SwiftUI中,您可以通过向显示的视图添加一个修改器来进行自定义转换
Text(“hi”).transition(AnyTransition.opacity.combined(with:.slide))
谢谢@mimo的提示,我会检查一下。