SF符号的简单运用

546 阅读1分钟

最近自己在写一款简单的小应用,每次需要图标的时候,就去阿里巴巴矢量图库里找,固然这里能找到很合适的。但是如果写一些各个小应用之间都用的通用UI的时候,就会很烦,既要挪代码,还要挪小图标文件。后来发现SF符号可以完美的解决这个问题。

1,下载SF Symbols 传送门🚪
2,安装下载的资源,打开之后如图,可以再里面找想要的图标,右键可以拷贝图标名字。

3,在外面设置图标的名字,大小,宽窄,缩放以及颜色就行了,类似于设置字体。

 ///根据SF符号,获取图片
    class func imageSystem(named: String, size: CGFloat, weight: SymbolWeight = .medium, scale: SymbolScale = .medium, color: UIColor? = nil) -> UIImage? {
        let config = UIImage.SymbolConfiguration.init(pointSize: size, weight: weight, scale: scale)
        let image = UIImage.init(systemName: named, withConfiguration: config)
        let corlor = color ?? UIColor.colorUserInterfaceStyle(lightColor: lightTitleColor, darkColor: darkTitleColor).withAlphaComponent(0.65)
        let resultImg = image?.withTintColor(corlor, renderingMode: .alwaysOriginal)
        return resultImg
    }

4,这个是个设置颜色的方法。

UIColor.colorUserInterfaceStyle(lightColor: lightTitleColor, darkColor: darkTitleColor)

5,调用这个方法

addressIcon.image = UIImage.imageSystem(named: "location.circle", size: 10, color: publishIconColor)

⭐️⭐️⭐️然后效果就出来啦!