【发布时间】:2020-12-19 17:00:16
【问题描述】:
我有一个 NavigationLink 附加了 .contextMenu 修饰符。请注意,NavigationLink 位于 ForEach 内部,LazyHStack 位于 ScrollView 内部。 (我正在创建一个水平滚动的“卡片”行,就像许多 Apple 应用程序一样。)
现在,导航和上下文菜单都可以工作了;如果我单击一下,它会导航到我指定的视图,如果我长按它会显示一个上下文菜单。 问题在于,由于导航链接突出显示,上下文菜单集中在突出显示的灰色视图上。
我考虑通过视图修饰符删除导航链接的突出显示,但无济于事。灰色突出显示仍适用于上下文菜单视图。
.onAppear {
UITableViewCell.appearance().selectionStyle = .none
UITableView.appearance().allowsSelection = false
}
那么,我怎样才能有一个既可以在点击时导航的视图,又可以在触发长按手势时提供一个专注于该视图的上下文菜单?请注意,我没有尝试在ContextMenu 中有一个NavigationLink(似乎有很多问题在问);我正在尝试将ContextMenu 附加到NavigationLink。
【问题讨论】:
标签: ios swift swiftui swiftui-navigationlink