SwiftUI: поместите значок SF по высоте строки

Когда я пытаюсь отобразить значок рядом с текстом, изображение добавляет ненужное пространство вверху, увеличивая высоту строки, и я не понимаю, как я могу это контролировать. Я безуспешно пробовал frame, padding, resizable. Я также попробовал элемент Label, который мой XCode не распознает (неразрешенный идентификатор Label).

Изображение добавляет лишнее пространство вокруг себя, увеличивая высоту строки

Изображение показывает разницу между изображением и текстом, где изображение добавляет нежелательное пространство.

Откуда это дополнительное пространство и как я могу его контролировать?

VStack {
    Text("User Name").bold()
    HStack {
        Text("[email protected]")
        Image(systemName: "checkmark.seal.fill")
        .font(.system(size: 14))
            .foregroundColor(.blue)
    }
}

person Ti Hausmann    schedule 30.08.2020    source источник


Ответы (1)


Изображение показывает разницу между изображением и текстом, где изображение добавляет нежелательное пространство. Откуда это дополнительное пространство и как я могу его контролировать?

Все дело в интервале по умолчанию ... это, да, странно, используйте явное, например

VStack(spacing: 0) {
   // ... other your code
}
person Asperi    schedule 30.08.2020
comment
Спасибо, вот и все! Настолько странно, что этого не происходит с Text, сложно понять, как SwiftUI работает за кулисами. - person Ti Hausmann; 30.08.2020