Flutter 画面遷移を行う
Flutterで、画面遷移を行う手順を記述してます。任意の名前でDartファイルを作成して、作成したファイルに移動して画面遷移を行います。
環境
- OS windows11 pro 64bit
- Flutter 3.3.1
画面遷移を行う
まずは、任意の名前でDartファイルを以下のコードで画面を作成します。
※ここでは「page_one.dart」という名前で作成してます。
import 'package:flutter/material.dart';
class pageOne extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('page1'),
),
body: Container(
color: Colors.red,
),
);
}
}
ここでは、ボタンクリックで移動させるので、次に遷移させる側に以下のコードを追加します。
import 'page_one.dart';
body: Center(
child: ElevatedButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => pageOne()),
);
},
child: Text(
"Button",
),
),
),
実行結果をみると画面遷移していることが確認できます。
複数ページを指定
複数ページがある場合は「routes」を使用します。
「page_two.dart」を、以下の内容で作成しておきます。
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: const MyHomePage(title: 'Flutter Demo Home Page'),
routes: {
'/page1': (context) => pageOne(),
'/page2': (context) => pageTwo(),
},
);
}
}
「Navigator.pushNamed」を使用して、作成したパスでアクセスします。
body: Center(
child: ElevatedButton(
onPressed: () {
Navigator.pushNamed(
context,
'/page2',
);
},
child: Text(
"Button",
),
),
),
);
実行結果をみるとアクセスできていることが確認できます
-
前の記事
コマンドプロンプト ファイルをダウンロードする 2023.03.30
-
次の記事
Dart エラー「Bad state: No element ListMixin.firstWhere」が発生した場合の対処法 2023.03.31
コメントを書く