如何在SwiftUI中设置SF符号的大小?

Rya*_*yan 5 swiftui sf-symbols

如何使用SwiftUI在Xcode 11中设置SF符号的大小?

YRU*_*iao 48

您可以设置重量和尺寸:

Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .ultraLight))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .thin))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .light))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .regular))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .medium))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .semibold))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .bold))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .heavy))
Image(systemName: "checkmark.circle")
    .font(.system(size: 16, weight: .black))
Run Code Online (Sandbox Code Playgroud)


Mat*_*Bak 34

另一种方法是使用.imageScale().

Image(systemName: "chevron.left").imageScale(.small)
Image(systemName: "chevron.left").imageScale(.medium)
Image(systemName: "chevron.left").imageScale(.large)
Run Code Online (Sandbox Code Playgroud)


Tob*_*ias 33

如果你想使用框架,你也可以:

Image(systemName: "plus")
     .resizable()
     .scaledToFit()
     .frame(width: 24, height: 24)
Run Code Online (Sandbox Code Playgroud)

  • 这实际上设置了确切的大小,与字体方法不同。好的。 (3认同)

Rya*_*yan 7

SF符号类似于字体,因此:

.font(.system(size: 60))
Run Code Online (Sandbox Code Playgroud)

  • 有趣的。非常违反直觉,因为 SF 符号用在“Image”内部 (7认同)
  • @Zain 我同意。不仅违反直觉而且很奇怪 (4认同)
  • 不是真的,尤其是当你想到网络开发和字体很棒时 (2认同)
  • 最重要的答案应该包括来自 @mathias-bak 的关于能够使用 `.imageScale(Image.Scale)` 的提示。 (2认同)

ARG*_*Geo 5

由于图标SF 符号已深度集成到 San Francisco 系统字体中(目前我们有 4000 多个),因此可以使用矢量图形工具对其进行编辑,并可以按照习惯的方式进行操作。

var body: some View {
    
    Image(systemName: "swift").imageScale(.large)
    
    HStack {
        // Spacer()            
        Label("Swift", systemImage: "swift").scaleEffect(2)       
        // Spacer()
        Text("Swift \(Image(systemName: "swift"))").font(.largeTitle) 
        // Spacer()
    }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述