我正在创建一个库图标类,它接收图标名称、标志“isSF”(此标志将说明图标是否为 SF 符号)和图标的大小。我需要根据收到的大小值调整两个图标的大小。我在这里面临的问题是,对于 SF Symbols,我们可以使用 .font(.system(size : value)) 修饰符调整它的大小,但如何调整图像(自定义图标)的大小。
请帮助我。提前致谢
struct XIcon: View {
var iconName: String
var isSF: Bool? = true
var size: CGFloat
var body: some View {
if isSF! {
return AnyView( Image(systemName: "\(iconName)")
.font(.system(size: size)))
} else {
return AnyView( Image(uiImage: UIImage(named: "\(iconName)")!).resizable())
}
}
}
同样,我知道当我们指定大小时,会执行矢量对齐,但对于 frame() 情况并非如此。对于图像缩放,有 scaleEffect() 但我不知道如何缩放图像,使其与为 SF Symbol 指定的大小相等