我刚刚开始学习SwiftUI,所以我决定通过苹果的教程,使用最新的Xcode (12.5)。一行代码立即给我带来了一个语义错误:"Value of type 'Color' has no member 'accessibleFontColor'"
下面是整个源模块:
//
// CardView.swift
// Scrumdinger
//
// Created by Vacuumhead on 6/4/21.
//
import SwiftUI
struct CardView: View {
let scrum: DailyScrum
var body: some View {
VStack(alignment: .leading) {
Text(scrum.title).font(.headline)
Spacer()
HStack {
Label("\(scrum.attendees.count)", systemImage: "person.3")
.accessibilityElement(children: .ignore)
.accessibilityLabel(Text("Attendees"))
.accessibilityValue(Text("\(scrum.attendees.count)"))
Spacer()
Label("\(scrum.lengthInMinutes)", systemImage: "clock")
.padding(.trailing, 20)
.accessibilityElement(children: .ignore)
.accessibilityLabel(Text("Meeting length"))
.accessibilityValue(Text("\(scrum.lengthInMinutes) minutes"))
}
.font(.caption)
}
.padding()
.foregroundColor(scrum.color.accessibleFontColor)
}
}
struct CardView_Previews: PreviewProvider {
static var scrum = DailyScrum.data[0]
static var previews: some View {
CardView(scrum: scrum)
.background(scrum.color)
.previewLayout(.fixed(width: 400, height: 60))
}
}获得错误的行是body的最后一行。
.foregroundColor(scrum.color.accessibleFontColor)消息是"Value of type 'Color' has no member 'accessibleFontColor'"。
当我注释掉这一行时,这个程序编译并运行得很好,当然没有任何颜色。从恐龙时代起,我就开始写C++了,但我对SwiftUI并不熟悉,甚至不知道该从哪里着手解决这个问题。
欢迎任何建议。
发布于 2021-06-04 20:06:17
示例项目中可能缺少一个名为Color+Codable.swift的文件,该文件定义了Color上的一些扩展名。一个是accessibleFontColor
extension Color {
var accesibleFontColor : Color {
//etc.
}
}从https://developer.apple.com/tutorials/app-dev-training/managing-state-and-life-cycle下载文件并确保在项目中使用Color+Codable.swift。
https://stackoverflow.com/questions/67843313
复制相似问题