SFSymbolsFinder 是一个方便的库,用于获取所有可用的最新 SF Symbols 图片。
SFSymbolsFinder 引入了 22 个 SF Symbols 类别,每个类别都由一个 enum 表示。
通用通信天气物体和工具设备连接交通运输人类自然编辑文本格式媒体键盘商业时间健康形状箭头索引数学游戏多色全部所有类别都基于 Apple 官方的 SF Symbols 应用程序 sfsymbols
所有图标都已更新,现在支持所有图标。请参考“全部类别”以获取所有图标。 欢迎贡献!
现在你可以直接使用智能初始化!
Image(systemName: .person)
UIImage(systemName: .person)
通过调用每个类别的 enum 轻松使用它
import SFSymbolsFinder
import SwiftUI
struct ContentView: View {
var body: some View {
VLayout {
// Approach 1 by using Image directly
VLayout {
Communication.micSlashFill.image
.resizable()
}
// Approach 2 by using the system name string
VLayout {
Image(systemName: Communication.micSlashFill.systemName)
.resizable()
}
// Approach 3 by using enum directly
VLayout {
All.micSlashFill // this one is recognized as an Image already
// If you want to resize you need to access the body
All.micSlashFill.body
.resizable()
}
}
}
}
要获取 uiImage 版本,可以使用以下代码
All.micSlashFill.uiImage
有些类别需要特殊方式来检索符号
其中一个图标 oneMagnifyingglass 用于获取 1.magnifyingglass 系统名称
对于索引,有特殊的方法来获取 3 个特殊符号,用于检索 Currency(货币)、Alphabet(字母)和 Number(数字)。
// With Int
Indices.Number.circle(number: 1).systemName
// With String
Indices.Number.circle(number: "01").systemName
请注意,并非每个数字或字符串都受支持,如果输入 999 或 "-123",则不会返回任何内容。
Alphabet(字母),它支持传递 Character 枚举。它支持 a 到 z。Indices.Alphabet.circle(character: .a).systemName // return a.circle
Currency(货币),它支持传递 AvailableCurrency 枚举。Indices.Currency.circle(currency: .dollar).systemName // return dollarsign.circle
如果您不想使用基于类别的,则所有图标都很有用。 只需从 SF Symbols 应用程序复制名称,然后使用 enum 样式的代码。
// In sf symbols : xmark.circle
// In code like below
All.xmarkCircle.systemName
注意:对于数字,仍然需要使用 Indices.Number
SFSymbolsFinder 使用 Swift Package Manager 分发。 要将其安装到项目中,请按照 本教程 并使用此存储库 URL:https://github.com/abadikaka/SFSymbolsFinder.git。
SFSymbolsFinder 由 Michael Abadi S. 构建,作为他在 他的网站 中描述的某些项目的组件。
欢迎并鼓励所有用户积极参与项目的持续开发 - 通过修复遇到的任何错误,或通过改进发现缺乏的文档,并添加更多或丢失的可用 SF Symbols,甚至仅添加一个单元测试。
如果您想进行更改,请打开一个 Pull Request,即使它只包含您计划更改的草稿,或者一个重现问题的测试。
如果您想打开一个 issue,请提交新的 issue。
感谢您,请享受使用 SFSymbolsFinder!