我有一个里面有 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
}
}