私は最初のSwiftUIアプリに取り組んでおりList
、そのカテゴリのアイテムの数を示すバッジとともにカテゴリを表示したいと考えています。カテゴリのタイトルは左側にあり、バッジは行の右揃えになります。リストは で構成されNavigationLink
ているため、いずれかをタップすると、ビュー階層にさらにドリルダウンできます。NavigationLink
sをレンダリングするために書いたコードは次のようになります。
List {
ForEach(myItems.indices) { categoryIndex in
let category = categories[categoryIndex]
let title = category.title
let fetchReq = FetchRequest<MyEntity>(entity: MyEntity(),
animation: .default)
NavigationLink(destination: MyItemView()) {
HStack(alignment: .center) {
Text(title)
Spacer()
ZStack {
Circle()
.foregroundColor(.gray)
Text("\(myItemsDict[category]?.count ?? 0)")
.foregroundColor(.white)
.font(Font.system(size: 12))
}
}
}
}
}
機能をレンダリングしますが、NavigationLink
期待どおりにバッジが右揃えで表示されません。代わりに、次のようになります。
で何かに引っかかっていることはわかってHStack
いますが、何が原因かわかりません。カテゴリ タイトルのテキストが行の大部分を占め、バッジが行の右揃えになるようにするにはどうすればよいですか?