SwiftUIで複数の遷移先を配列に格納して遷移する方法
複数の遷移を配列に格納する
let destinations: [AnyView] = [ AnyView(FirstView()), AnyView(SecondView()), AnyView(ThirdView()) ]
遷移する
var body: some View { ScrollView(.horizontal, showsIndicators: false) { HStack { ForEach(destinations.indices) { index in NavigationLink( destination: destinations[index]) { Circle() .foregroundColor(.blue) .frame(width: 100, height: 100, alignment: .center) } } } } }
おわりに
いつ使うかわかりませんが、 自分自身、複数のメニューをHStackでカードビューを並べて作りたいときに、どのようにしてNavigationLinkを使うのか悩んだときにこれで解決しました。
他にもっといい方法がありそう。