Можно ли изменить кнопку Navigation для отображения изображения вместо синего цвета? - PullRequest
1 голос
/ 11 июня 2019

Я пытаюсь установить 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)
        }
    }

Я ожидаю, что Изображения будут работать как кнопка (что и было), но все еще отображают исходное изображение вместо того, чтобы быть синим.

Изображения к ожидаемому результату и фактическому результату следующие:

Expected Result

Actual Result

1 Ответ

7 голосов
/ 11 июня 2019

Попробуйте изменить режим рендеринга

Image(place.imageName)
    .renderingMode(.original)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...