【发布时间】:2020-12-30 00:53:51
【问题描述】:
尝试初始化 CustomButton(title: "Add", icon: .add, status: .enable)
我的代码如下。我确实得到了标题,但枚举不起作用。
加上接收错误
无法将“图像”类型的值转换为预期的参数类型“字符串”
在图像(图标)
import SwiftUI
struct CustomButton: View {
var title: String
var icon: String
var status: Color
var body: some View {
Button(action: {
}) {
Text(title)
.foregroundColor(.white)
.background(Color(.green))
.font(Font.custom("SFCompactDisplay", size: 14))
Image(icon)
.renderingMode(.original)
.foregroundColor(.white)
}
}
enum Icon {
case add
case edit
var image: Image {
switch self {
case .add:
return Image("Add")
case .edit:
return Image("Edit")
}
}
}
enum Status {
case enable
case disable
var color : Color {
switch self {
case .enable:
return Color(.green)
case .disable:
return Color(.gray)
}
}
}
init(title: String, icon: Icon, status: Status) {
self.title = title
self.icon = icon.image
self.status = status.color
}
}
【问题讨论】: