我正试图设置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)
}
}
我希望“图像”可以像按钮一样工作(但确实如此),但是仍然显示原始图像,而不是全是蓝色。
达到预期结果和实际结果的图像如下:
答案 0 :(得分:7)
尝试更改渲染模式
Image(place.imageName)
.renderingMode(.original)