SwiftUIで複数の遷移先を配列に格納して遷移する方法
2021/03/08
複数の遷移を配列に格納する
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を使うのか悩んだときにこれで解決しました。
他にもっといい方法がありそう。