SwiftUI - 使用后退按钮和半灰屏/奇怪行为打开导航视图
SwiftUI - Navigation View opening with Back button and half grey screen / weird behavior
我正在尝试向我的应用程序添加导航视图,但它导致了问题。我的主要 UI 是一个可以无限滑动的页面轮播。它最初看起来像这样:
然后,当我将它包裹在导航视图中时,它会像这样打开,只有一个后退按钮,没有其他任何东西:
当我按下后退按钮时,它看起来像这样:
左侧像原来的一样可以滑动 UI,但是当我触摸右侧灰色时,它会使用后退按钮返回空白页面。
知道是什么原因造成的吗?我通过将每个页面放入 ZStack 并使用 offsets/relativeLocation 来实现无限轮播。我参考了这个教程:
https://www.youtube.com/watch?v=fB5MzDD1PZI
我可以不使用 NavigationView 吗?有没有我可以采用的替代路线,我可以在其中创建自己的顶部导航栏并导航到单独的视图而无需 NavigationBar/NavigationLink?
感谢任何帮助,请随时提出问题等。谢谢!
您可以将按钮设置为关闭,它可以工作,但我不知道这是您想要的。
它将带您回到上一屏幕。
@IBAction func backButton(_ sender: Any) {
dismiss(animated: true, completion: nil)
}
您想将 StackNavigationViewStyle
应用到您的 NavigationView
。
NavigationView {
...
}.navigationViewStyle(StackNavigationViewStyle())
您遇到了不想要的拆分视图,您可以找到更多信息 。
对于横向 iPad 或 iPhone Pro Max 等较大的设备,默认为 DoubleColumnNavigationViewStyle
。
我正在尝试向我的应用程序添加导航视图,但它导致了问题。我的主要 UI 是一个可以无限滑动的页面轮播。它最初看起来像这样:
然后,当我将它包裹在导航视图中时,它会像这样打开,只有一个后退按钮,没有其他任何东西:
当我按下后退按钮时,它看起来像这样:
左侧像原来的一样可以滑动 UI,但是当我触摸右侧灰色时,它会使用后退按钮返回空白页面。
知道是什么原因造成的吗?我通过将每个页面放入 ZStack 并使用 offsets/relativeLocation 来实现无限轮播。我参考了这个教程: https://www.youtube.com/watch?v=fB5MzDD1PZI
我可以不使用 NavigationView 吗?有没有我可以采用的替代路线,我可以在其中创建自己的顶部导航栏并导航到单独的视图而无需 NavigationBar/NavigationLink?
感谢任何帮助,请随时提出问题等。谢谢!
您可以将按钮设置为关闭,它可以工作,但我不知道这是您想要的。
它将带您回到上一屏幕。
@IBAction func backButton(_ sender: Any) {
dismiss(animated: true, completion: nil)
}
您想将 StackNavigationViewStyle
应用到您的 NavigationView
。
NavigationView {
...
}.navigationViewStyle(StackNavigationViewStyle())
您遇到了不想要的拆分视图,您可以找到更多信息
对于横向 iPad 或 iPhone Pro Max 等较大的设备,默认为 DoubleColumnNavigationViewStyle
。