SwiftUI模态演示在iPad模拟上搞砸了?

SwiftUI模态演示在iPad模拟上搞砸了?,swift,view,modal-dialog,swiftui,Swift,View,Modal Dialog,Swiftui,因此,我有一个模式,它被拉了起来,其中有导航链接,有其他视图作为目的地(现在,这些视图是空的)。出于某种原因,在Xcode中的iPhone模拟器上,模态表示很好;父视图被拉起,您可以单击导航链接,使模式打开一个新的“子页面”。但出于某种原因,在iPad模拟器上,父模式/视图占据了模式的一半,导航链接(当我单击它们时)出现在模式的另一半。如何在iPhone模拟器上模拟行为 如您所见,iPad上模式演示的左侧是“设置”模式,当我单击导航链接时,“许可证”模式出现在右侧。如果我没有单击导航链接,则右

因此,我有一个模式,它被拉了起来,其中有导航链接,有其他视图作为目的地(现在,这些视图是空的)。出于某种原因,在Xcode中的iPhone模拟器上,模态表示很好;父视图被拉起,您可以单击导航链接,使模式打开一个新的“子页面”。但出于某种原因,在iPad模拟器上,父模式/视图占据了模式的一半,导航链接(当我单击它们时)出现在模式的另一半。如何在iPhone模拟器上模拟行为


如您所见,iPad上模式演示的左侧是“设置”模式,当我单击导航链接时,“许可证”模式出现在右侧。如果我没有单击导航链接,则右侧为空。

将其添加到导航视图中

NavigationView {
    ....
}.navigationViewStyle(StackNavigationViewStyle())

默认的SwiftUI导航方法是使用UISplitView作为所有设备的基础导航模型。如果您熟悉UISplitView特性,您将能够理解SwiftUI导航的所有怪癖

在简单模型中,这往往导致主/细节交互模型,并解释了设备旋转时视图的随机重置/重新创建

指定StackNavigationViewStyle会有所帮助,因为它会将模型从主/详细更改为单个堆叠的UINavigationView模型。这更简单、更可靠,但不能有效利用iPad用户界面