【Flutter WEB】ルート(routes)を設定して、アクセスしたときのURLを変更する

#プログラミング#Flutter#dart#Flutterラボ
ルートを設定することで、アプリ内で画面遷移した際に表示されるURLを変更することができます。
MaterialApp内にルートの設定を追記します。
return MaterialApp(
routes: {
'/': (context) => HomePage(),
'/sub': (context) => SubPage(),
},
...
アプリを開いたときに表示するページをHomePage、切り替え先のページをSubPageとしておきます。
これに合わせて実際に表示するページを用意します。
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: InkWell(
child: Text('subへ移動', style: TextStyle(fontSize: 50),),
onTap: () {
Navigator.pushNamed(context, '/sub');
},
),
)
);
}
}
class SubPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: InkWell(
child: Text('HomePageへ移動', style: TextStyle(fontSize: 50),),
onTap: () {
Navigator.pushNamed(context, '/');
},
),
)
);
}
}
文字をタップしたとき(onTap)にNavigator.pushNamedでルートを指定して画面遷移します。
これで画面遷移するとURLが切り替わります。