見出し画像

SwiftUIでいこう!-Navigation! ..1

SwiftUIで画面遷移をします。以前の"ViewController"でやるのと比べると簡単になっています。

初期画面の

struct ContentView: View {}

の他にもう1つViewを作ります。便宜上

struct SecondView: View {}

とします。

この2つの画面を行き来できるようにします。基本

"NavigationView"

を使います。

struct ContentView: View {
   
   var body: some View {
       NavigationView{
           NavigationLink(destination: SecondView()) {
               Text("Transition!")
           }
       }
     }
   
}
NavigationLink(destination: SecondView()) {
Text("Transition!")
}

NavigationView  >  NavigationLink の形で実装します。
("NavigationView{}"の中にNavigationLink(){}を入れ子にして使います)

"destination: SecondView()" 別の画面である"SecondView()"を遷移先を指定しています。

Text("Transition!")で表示されるテキストをクリックすることでSecondView()に切り替わります。ボタンでなくても遷移することができます。

画像1

から、

画像2

へ画面が変わります。

遷移先のSecondViewにはNavigationLinkで実装した場合には"<Back"の表示が現れ、その "<Back"を押すことで、最初の画面に戻ります。シンプルでわかりやすい画面の切り替えです。

実は

NavigationLink(destination: Text("second")){
     Text("Hello, World!")
}

のようは遷移先を"SecondView()"のような"View"ではない

Text("second")

を指定しても画面は切り替わり、

second

と表示される"View"が生成されます。


この記事が気に入ったらサポートをしてみませんか?