【发布时间】:2020-04-22 08:45:58
【问题描述】:
我的布局如下所示: Layout Drawing
有一个主视图,它是我的 NavigationView 的 Feed,然后我在里面有视图:PostList -> Post -> PostFooter 和 PostFooter 中的一个按钮,这将是我的 NavigationLink
struct Feed: View {
var body: some View {
NavigationView {
PostList()
}
}
}
struct PostList: View {
var body: some View {
List {
ForEach(....) {
Post()
}
}
}
}
struct Post: View {
var body: some View {
PostHeader()
Image()
PostFooter()
}
}
struct PostFooter: View {
var body: some View {
NavigationLink(destination: Comment()) {
Text("comments")
}
}
}
但是当我点击 cmets 时,它会转到 Comment View 然后返回 Feed() 然后返回 Comment() 然后返回 Feed() 并出现奇怪的行为。
有没有更好的方法来处理这种情况?
更新
Navigation 现在可以工作了,但所有 Post 组件都是 Tapeable,而不仅仅是 PostFooter 中的 Text。 有什么方法可以禁用单元格上的点击手势并在一个单元格中添加多个 NavigationLink 以转到不同的页面?
【问题讨论】:
-
您能提供工作示例来重现吗?
-
您的代码非常适合我。您确定这里没有其他遗漏吗?
-
@Asperi 我已经更新了导航错误是由其他原因引起的帖子,但现在问题是所有单元格触发导航,而不仅仅是 PostFooter 中的文本
标签: ios swift swiftui swiftui-navigationlink