SwiftUI HStack +Image +Text=Label
iOS 14からLabelが追加された。
HStack+Image+TextのコーディングをLabel 1つに出来る。
import SwiftUI
struct ExampleLabelView: View {
var body: some View {
VStack(spacing: 8.0) {
HStack {
Image(systemName: "character.book.closed")
Text("Books")
}
Label("Books", systemImage: "character.book.closed")
Label("Books", systemImage: "character.book.closed")
.labelStyle(TitleOnlyLabelStyle())
Label("Books", systemImage: "character.book.closed")
.labelStyle(IconOnlyLabelStyle())
if #available(iOS 14.5, *) {
Label("Books", systemImage: "character.book.closed")
.labelStyle(TitleAndIconLabelStyle())
} else {
// Fallback on earlier versions
}
Label("Books", systemImage: "character.book.closed")
.border(Color.red)
}
}
}
実行結果
見た目は変わらない。
制御しやすくなる。






