问题标签 [swiftui-navigationlink]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
68 浏览

swiftui - 使 NavigationLink 目标视图执行“onShow”

我正在构建一个健身应用程序,用户从列表中选择一个程序,当他单击所选程序时,会出现一个新视图并播放视频(视频上有倒数计时器)。

我使用 NavigationView/NavigationLink 构建了屏幕,每个都有它的“目标视图”和它自己的参数。

1)我注意到,当父视图被构建时,所有目标视图(ExerciseVideoView)甚至在用户点击相应按钮之前就被执行。我的倒计时在后台启动。当用户单击 NavigationLink 并且“执行”新视图时,我应该看到它们启动。这是正确的行为吗?我可以在显示目标视图时使它们“执行/启动”吗?

2)第二个问题是我想在每个图像下方显示带有蓝色按钮的图像(我将它们都放在 VStack 容器中)。但是当我启动我的应用程序时,只显示图像,但“Color.blue”矩形不可见。这是为什么?如何使它们也可见?

0 投票
1 回答
33 浏览

swiftui - swiftUI NavigationLink 没有带我到正确的视图

我有以下内容:

但是 NavigationLinkNavigationLink(destination: PostView()) {没有带我到正确的视图?

我已经尝试将 NavigationLink 包裹在每个 VStack 周围,但这也没有带我去查看

0 投票
1 回答
286 浏览

swift - 如何正确处理 macOS 上 NavigationView 中的选择?

我想根据侧边栏中的选择构建一个带有侧边栏和一些内容的简单 macOS 应用程序。

我有一个 MainView ,其中包含NavigationView一个SidebarListStyle. 它包含 aList和一些NavigationLinks。这些具有选择的绑定。

我希望以下事情能够奏效:

  1. 当我启动我的应用程序时,选择的值被忽略。侧边栏中的项目都没有突出显示,详细信息窗格中也没有内容。

  2. 当我在侧边栏中手动选择一个项目时,应该可以通过项目之间的向上/向下箭头键进行导航。这不起作用,因为选择/突出显示消失了。

  3. 当我更新选择绑定的值时,它应该突出显示列表中没有发生的项目。

这是我的示例实现:

EnvironmentObject用于从内部传播更改DetailView。如果有更好的解决方案,我很高兴听到它。

所以问题仍然存在:发生这种情况我做错了什么?我曾希望使用 Xcode 11.5 Beta 1 这会消失,但事实并非如此。

0 投票
0 回答
7 浏览

swiftui-navigationlink - 放置在 NavigationLink 中时,颜色视图不可见

我想知道为什么在运行此代码时看不到图像之间的蓝色按钮?

我只看到图像,但 Color.blue 由于某种原因被隐藏了。没有 NavigationLink 一切正常

渲染模板有问题吗?

请指教

0 投票
2 回答
481 浏览

ios - NavigationLink 项目区域内的 SwiftUI 按钮无效

我有一个列表项的视图,它在导航链接中显示一些新闻卡。

我应该在 navigationLink 的每个新闻卡片中添加一个喜欢/不喜欢的按钮,而不是被带到 NavigationLink.destination 页面。

它看起来像一个大按钮里面的一个小按钮。当您单击那个小的时,执行小的而不执行较大的。(注意:点击区域被两个按钮覆盖,较小的优先)(在 javascript 中,它看起来像一个叫做 .stopPropaganda 的东西)

这是我的代码:

目前,按钮操作(喜欢/不喜欢)将不会执行,因为每当按下按钮时,navigationLink 会将您带到目标视图。我已经尝试过这个几乎相同的问题,但它无法解决这个问题。

有没有办法让这成为可能?

谢谢。

0 投票
1 回答
168 浏览

swiftui - SwiftUI 的 List/ForEach 视图中是否可以有一个 Button(action: -)

我想将视图添加到其中包含Button(action: -a 的列表视图中。因此,用户可以查看列表的详细信息屏幕,但如果用户不需要查看可以在列表中选择使用的详细信息,则该屏幕有一个。ForEachNavigationLinkButton(action: -Button

但是当我单击按钮时,总是会转到 DetailView

不确定是否可能。任何建议

0 投票
1 回答
564 浏览

swift - SwiftUI .onDelete 抛出致命错误:索引超出范围

我有一个 s 列表,它们每个都有一个详细信息页面,Account并且它们通过@Binding. AccountDetailView当前代码运行良好,更新很好。完全没有问题。但是,当我将onDelete修饰符添加到ForEach下面并在应用程序中尝试swipe to delete手势时,它会崩溃并说Fatal Error: Index out of range两次。

我进行了一些搜索并了解到ForEach不知何故没有得到通知 - 或者忽略它,idk 很多细节 - 并寻找数组的最后一个索引。最后,它找不到它并抛出错误。

id: \.self参数保持在适当位置时,它会在 ' 处引发错误AppDelegate,当我尝试删除参数时,应用程序可以正常工作,但它再次在上面的行处onDelete引发相同的错误。NavigationLink

这里是AccountDetailView

finallyAccount类符合Codable,NSObjectIndentifiable其他一些类。我不想仅仅因为不想让问题变得复杂且难以检查而给出所有代码。如果需要,我将提供代码的任何部分。提前致谢。

0 投票
1 回答
115 浏览

swiftui - 隐藏的导航栏仍然会向下推视图

我有一个:

contentView 调用SignInView()

在我的 SignUpView() 我有:

在我的 SigbInView 我有:

.navigationBarHidden(true)用来隐藏栏,但< back仍然出现在左上角带你回到上一个屏幕,我还尝试添加导航栏text = ""并将属性设置为.inline

我试图仅在 SignInView 和 SignUpViews 上使用这些 navigationLinks 进行导航,我不希望栏出现或将视图向下推。

0 投票
1 回答
123 浏览

swiftui - 如何在 SwiftUI 中进行类似 Apple Music 的导航?自定义列表和 NavigationView 的突出显示不会消失

这是我尝试开始工作的示例:

注意:TestView 只是一些带有文本 hello world 的视图。

我正在尝试复制 Apple Music 的导航风格。我尝试将 aButton放入,NavigationLink但在文本上点击它不会改变视图,而且我无法找到一种方法来可靠地同时在点击时改变行的颜色。同样在某种方法中,我设法让它工作,但是颜色动画的方式是不同的,即它从 A 褪色到 B,超过约 100 毫秒,而我想要实现的是立即在状态之间制作动画(比如在苹果音乐)。

我目前的方法是使用 a List,将其放入NavigationLinks其中,然后通过给它一个高度来切断整个视图。这样我就可以把它和其他内容放在一起。

它现在工作正常,但是每当我单击一行并返回时,该行仍然突出显示,而它不应该突出显示。有没有办法让它在以某种方式返回屏幕时取消选择?

我认为这个错误是由Lista 内部引起的ScrollView,因为当我删除时ScrollView,列表正常工作,并且没有这个突出显示错误。但我需要能够将我的内容放在列表中,并且我不打算让列表占据整个屏幕。

有没有办法用这种方法修复这个错误?我也愿意在不使用List.

0 投票
1 回答
552 浏览

swiftui - MacOS 上的 SwiftUI:单击 NavigationLink 时调用函数

我的需求很简单,但我似乎想不出办法(许多帖子相当复杂或旧/适用于 iOS)。

我有一个带有 NavigationLink 的 NavigationView,一切正常。出于某些原因,我想知道用户单击的项目,因为它用于视图上的其他操作。

我尝试在 NavigationView 中放置一个按钮,但随后仅触发按钮操作,但链接不起作用。

我尝试了 OnTapGesture - 然后该函数触发但没有传播,因此详细视图永远不会出现。

我错过了什么?有什么方法可以做到这一点而不会过于复杂?