SwiftUIでテキストの位置を揃えたいとき…🤔

SwiftUIで横並びのテキストのAlignmentを下揃えにするのはどうするんだろ?と思い調べた。 .lastTextBaselineを指定すると良いみたい。

A guide that marks the bottom-most text baseline in a view. Use this guide to align with the baseline of the bottom-most text in a view. The guide aligns with the bottom of a view that contains no text."

https://developer.apple.com/documentation/swiftui/verticalalignment/firsttextbaseline

import SwiftUI

struct ContentView: View {
    var body: some View {
        VStack(alignment: .leading, spacing: 8.0) {
            Group {
                HStack(alignment: .top) {
                    Text("山田 太郎").font(.title)
                    Text("25歳").font(.callout)
                }
                Text(".top")
                            
                HStack(alignment: .center) {
                    Text("山田 太郎").font(.title)
                    Text("25歳").font(.callout)
                }
                Text(".center")

                HStack(alignment: .bottom) {
                    Text("山田 太郎").font(.title)
                    Text("25歳").font(.callout)
                }
                Text(".bottom")

                HStack(alignment: .firstTextBaseline) {
                    Text("山田 太郎").font(.title)
                    Text("25歳").font(.callout)
                }
                Text(".firstTextBaseline")
            }

            HStack(alignment: .lastTextBaseline) {
                Text("山田 太郎\n(開発チーム所属)")
                    .font(.title)
                Text("25歳")
                    .font(.callout)
            }
            Text(".lastTextBaseline(2行テキストの場合)")
        }
        .padding()
    }
}

#Preview {
    ContentView()
}