139得票14回答
SwiftUI - 如何避免将导航硬编码到视图中?

我试图为一个更大、生产就绪的SwiftUI应用做架构。然而,我总是遇到相同的问题,这指向了SwiftUI中的一个主要设计缺陷。 到目前为止,没有人能够给出一个完全可行、生产就绪的答案。 如何在SwiftUI中创建包含导航的可重用视图? 由于SwiftUI的NavigationLink与View...

34得票4回答
如何禁用NavigationView的推入和弹出动画

假设有这样一个简单的 NavigationView: struct ContentView : View { var body: some View { NavigationView { VStack { Nav...

28得票2回答
SwiftUI NavigationView尝试弹出缺失的目标(Monoceros?)

我的 Xcode 版本为 12,部署至 iOS 14.0。我的主屏幕拥有 NavigationView在 NavigationView 中有一个 TabView(包含 4 个选项卡)每个选项卡中都有包含按钮和 NavigationLinks 的子视图应用程序的导航功能正常运行(当我点击子视图中...

28得票2回答
SwiftUI 错误:"包含控制流语句的闭包不能与函数构建器 'ViewBuilder' 一起使用"。

我试了一个SwiftUI教程,“处理用户输入”。 https://developer.apple.com/tutorials/swiftui/handling-user-input 我尝试使用for而不是ForEach来实现它。 但是出现了一个错误:"Closure containing ...

26得票6回答
SwiftUI NavigationLink自动弹出

我有一个简单的用例,使用NavigationLink将一个屏幕推入另一个屏幕。在iOS 14.5 beta(1,2,3)中出现了奇怪的行为,即推送的屏幕被推出后立即弹出。 我成功创建了一个示例应用程序,在其中复制了此问题。我认为原因是存在@ Environment(\.presentation...

24得票9回答
SwiftUI列表中的披露指示器,不需要使用NavigationLink

我正在寻找一种方法来显示披露指示器“chevron”,而无需将我的视图包裹在NavigationLink中。例如,我想显示指示器,但不导航到新视图,而是例如显示模态框。 我已经找到了很多隐藏指示器按钮的解决方案,但没有一个解释如何添加它的。在当前的SwiftUI版本中是否可能实现这一点?st...

23得票2回答
SwiftUI列表不显示任何项目。

我想要在ScrollView中使用NavigationView,但是我没有看到列表项。struct ContentView: View { var body: some View { NavigationView { ScrollView{ ...

20得票1回答
'init(destination:isActive:label:)' 在 iOS 16.0 中已被弃用:请在 NavigationStack 或 NavigationSplitView 中使用 NavigationLink(value:label:)。

我尝试了此网站上发布的不同示例的几个迭代,但是都没有成功。 我也尝试了按照以下示例操作: 导航到新的导航类型: 我在此帖子标题中发现了NavigationLink(destination: isActive)已被弃用的警告。 struct PhoneLogin: View { ...

18得票2回答
SwiftUI中,当跟随NavigationLink并返回后,.toolbar消失了。

我在NavigationView的顶层添加了一个.toolbar,最终将用于选择列表中的项目而不使用滑动手势(上按钮、下按钮等)。此外,我还有一个.navigationBar,可以访问其他视图以获取账户和设置。 大部分看起来都很好,但是当我跟随NavigationView中的Navigatio...

18得票2回答
SwiftUI导航多个返回按钮

当我推入多个视图时,导航栏中会显示多个返回按钮。struct ContentView: View { var body: some View { NavigationView { NavigationLink(destination:SecVi...