是否可以更改 NavigationButton 以显示图像而不是蓝色?
Posted
技术标签:
【中文标题】是否可以更改 NavigationButton 以显示图像而不是蓝色?【英文标题】:Is it possible to change a NavigationButton to display Image instead of Blue Color? 【发布时间】:2019-06-11 10:30:07 【问题描述】:我正在尝试设置 NavigationButton
来显示图像,而不仅仅是一个蓝色按钮。
目前,我正在显示由图像组成的水平,Scrollview
。
这些图像应该指向另一个视图,该视图将呈现在 rootView
上方。
但是,当我将这些图像包裹在 NavigationButton
周围时,这些图像变成只有蓝色,而不是显示预期的原始图像。
CategoryRow 组件 (ScrollView
)
ScrollView(showsHorizontalIndicator: false)
HStack(alignment: .top, spacing: 0)
ForEach(categorizeCountry()) place in
NavigationButton(destination: PlaceDetail(place: place))
Image(place.imageName)
.resizable()
.clipShape(Rectangle())
.frame(width: 225, height: 150)
.cornerRadius(8)
.padding(.leading, 2)
.padding(.trailing, 2)
ContentView(CategoryRow 被渲染的地方)
var body: some View
NavigationView
List
FeaturedCard(places: fiveRandomPlaces)
CategoryRow(label: "Australia")
CategoryRow(label: "Japan")
CategoryRow(label: "Singapore")
CategoryRow(label: "Indonesia")
ForEach(store.places) place in
PlaceCell(place: place)
.navigationBarTitle(Text("Been There"))
.navigationBarItems(trailing: Button(action: sortPlaces)
Text("Sort")
)
.listStyle(.grouped)
我希望图像可以用作按钮(确实如此),但仍显示原始图像,而不是全蓝。
预期结果和实际结果的图片如下:
【问题讨论】:
【参考方案1】:尝试改变渲染模式
Image(place.imageName)
.renderingMode(.original)
【讨论】:
以上是关于是否可以更改 NavigationButton 以显示图像而不是蓝色?的主要内容,如果未能解决你的问题,请参考以下文章
在 SwiftUI 中将 NavigationButton 与服务器请求一起使用
SwiftUI:NavigationButton 初始化程序给出错误
navigationBarItems 中的 SwiftUI NavigationButton
如何在没有 SwiftUI 中的 NavigationButton 的情况下导航到 NavigationView 中的另一个视图?