我有一个列表项的视图,它在导航链接中显示一些新闻卡。
我应该在 navigationLink 的每个新闻卡片中添加一个喜欢/不喜欢的按钮,而不是被带到 NavigationLink.destination 页面。
它看起来像一个大按钮里面的一个小按钮。当您单击那个小的时,执行小的而不执行较大的。(注意:点击区域被两个按钮覆盖,较小的优先)(在 javascript 中,它看起来像一个叫做 .stopPropaganda 的东西)
这是我的代码:
var body: some View {
NavigationView {
List {
ForEach(self.newsData.newsList, id:\.self) { articleID in
NavigationLink(destination: NewsDetail(articleID: articleID)) {
HStack {
Text(newsTitle)
Button(action: {
self.news.isBookmarked.toggle()
}) {
if self.news.isBookmarked {
Image(systemName: "bookmark.fill")
} else {
Image(systemName: "bookmark")
}
}
}
}
}
}
}
}
目前,按钮操作(喜欢/不喜欢)将不会执行,因为每当按下按钮时,navigationLink 会将您带到目标视图。我已经尝试过这个几乎相同的问题,但它无法解决这个问题。
有没有办法让这成为可能?
谢谢。