我正在尝试将数据从一个屏幕传递到另一个屏幕,是否可以在swiftUI中创建segue并使用以下方法?
prepare(for segue: UIStoryboardSegue, sender: Any?)
答案 0 :(得分:2)
我无法解决segue问题,但是如果您希望将数据从一个屏幕传递到另一个屏幕,可以按照以下方式进行操作:
首先:在目的地中创建一个变种
struct DestinationView : View {
let information: InfoType
var body: some View { ... }
}
然后,当您在导航按钮中传递此信息时:
NavigationButton(destination: DestinationView(information: info)) {
Text("click me")
}
很抱歉没有完全回答您想要的内容,但希望对您有所帮助
答案 1 :(得分:0)
这是@ObjectBinding出现的地方。如果希望将数据从视图A传递到视图B,则可以在结构或类上使用@ObjectBinding,使该结构或类符合BindableObject并声明didChange属性,并通过使用Combine,如果进行了更改,则通过@ObjectBindable属性包装将这些更改发布到视图中。否则,这将使您拥有到对象的引用链接。