无法设置浅灰色强调色

时间:2021-01-23 21:58:27

标签: swift xcode swiftui

我想将列表中所选项目的强调色更改为浅灰色,最好带有一点不透明度。下面是我想要的截图,取自不同的应用程序。

Expected accent color

在我的项目中,我在 Assets.xcassets 下并将 AccentColor 设置为:

my accent color

但事实证明,应用程序中的颜色更深且没有不透明度:

actual accent color

有人知道为什么会这样吗?

以下是我的观点:

import CoreData
import SwiftUI

struct Sidebar: View {
    @Environment(\.managedObjectContext)
    private var viewContext
    
    @FetchRequest(entity: Element.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \Element.title, ascending: false)])
    private var elements: FetchedResults<Element>
    
    @AppStorage("SelectedElementId")
    var selectedElementId: String?
    
    var body: some View {
        VStack(alignment: .leading) {
            List(selection: self.$selectedElementId) {
                ForEach(self.elements) { element in
                    NavigationLink(destination: ContentView(), tag: element.id!, selection: self.$selectedElementId) {
                        Text(element.title!)
                    }
                }
            }.listStyle(SidebarListStyle())
            
            Button(action: addElement) {
                HStack {
                    Text("Add element")
                }
            }
        }
    }
    
    private func addElement() {
        let element = Element(context: viewContext)
        element.id = UUID().uuidString
        element.title = "My title"
        
        self.selectedElementId = element.id
               
        do {
            try self.viewContext.save()
        } catch {
            let nsError = error as NSError
            fatalError("Unresolved error \(nsError), \(nsError.userInfo)")
        }
    }
}

0 个答案:

没有答案
相关问题