У меня есть список с NavigationLink внутри. Когда я нажимаю на строку, она подсвечивается. Цвет, связанный со стилем интерфейса пользователя (в info.plist), может быть темным или светлым. Как изменить цвет этой подсветки? Я основал некоторые решения здесь, с "EpmtyView ()" и ".buttonStyle ()", но они не работают в моем случае. При использовании пользовательского стиля кнопки выделяется только содержимое ячейки (например, текст), но не сама ячейка. Я думаю, что проблема, связанная с «selectionStyle», приводит к тому, что UITableViewCell.appearance (). SelectionStyle = .none »удаляет эту подсветку.
struct ContentView: View {
var myArray = ["one", "two", "three"]
init() {
UITableView.appearance().backgroundColor = UIColor.clear
}
var body: some View {
NavigationView {
VStack {
List {
ForEach(self.myArray, id: \.self) { text in
NavigationLink(destination: DestinationView()) {
MyRow(text: text)
}
.listRowBackground(Color.black)
}
}.listStyle(GroupedListStyle())
}.background(Color.black)
}
}
}
extension UINavigationController {
override open func viewDidLoad() {
super.viewDidLoad()
let standartAppearance = UINavigationBarAppearance()
standartAppearance.backgroundColor = UIColor.black
navigationBar.standardAppearance = standartAppearance
navigationBar.scrollEdgeAppearance = standartAppearance
navigationBar.compactAppearance = standartAppearance
}
}