Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在SwiftUI中将@EnvironmentObject与PresentationButton一起使用_Ios_Swift_Swiftui - Fatal编程技术网

Ios 在SwiftUI中将@EnvironmentObject与PresentationButton一起使用

Ios 在SwiftUI中将@EnvironmentObject与PresentationButton一起使用,ios,swift,swiftui,Ios,Swift,Swiftui,我试图通过@EnvironmentObject传递数据,但只有通过NavigationButton转到下一个视图时,它才能工作,但是,我希望以模式显示下一个视图(PresentationButton) 我想用的是: PresentationButton( Text("Show Detail View"), destination: DetailView()) 尝试使用环境对象将可绑定对象提供给详细视图: PresentationButton(Text("Show Detail View"),

我试图通过
@EnvironmentObject
传递数据,但只有通过
NavigationButton
转到下一个视图时,它才能工作,但是,我希望以模式显示下一个视图(
PresentationButton

我想用的是:

 PresentationButton( Text("Show Detail View"), destination: DetailView())

尝试使用
环境对象
将可绑定对象提供给
详细视图

PresentationButton(Text("Show Detail View"), 
                   destination: DetailView().environmentObject(settings))

尝试使用
环境对象
将可绑定对象提供给
详细视图

PresentationButton(Text("Show Detail View"), 
                   destination: DetailView().environmentObject(settings))

我试过了,效果很好,但我想从一个视图到另一个视图展示几个视图,其中一些使用设置,一些不使用,因此,我不想像这样手动传输设置,我认为这就是@EnvironmentObject的目的,否则我可以用普通的var@SorinLica在这种情况下,我认为使用单身汉也不是个坏主意。通过确保它被用作一个EnvironmentObject,并且数据流是单向的,这意味着消除了使用单例的一些潜在不良副作用。这当然是需要记住的。@Fogmeister有趣的是,你能提供一个代码示例吗?我试过了,但我想从一个视图到另一个视图展示一些视图,其中一些使用设置,而另一些不使用,所以,我不想像这样手动传输设置,我想这就是@EnvironmentObject的目的,否则我可以用普通的var@SorinLica在这种情况下,我认为使用单身汉也不是个坏主意。通过确保它被用作一个EnvironmentObject,并且数据流是单向的,这意味着消除了使用单例的一些潜在不良副作用。不过这绝对是需要记住的。@Fogmeister有趣的是,您能提供一个代码示例吗?