状態によって作るウィジェットを変えればいいんじゃない。
まあ、今回のケースであればRiaFeedさんが書かれた通り、テキストを入れ替えるという実装の方がいいとは思うけど。
dart
1class Home1 extends StatefulWidget {
2 const Home1({Key? key}) : super(key: key);
3
4 @override
5 State<Home1> createState() => _Home1State();
6}
7
8class _Home1State extends State<Home1> {
9 bool viewType = true;
10
11 Widget text1() => const Text("text1");
12 Widget text2() => const Text("text2");
13 Widget text3() => const Text("text3");
14
15 List<Widget> widgets() {
16 if (viewType) {
17 return [text1(), text2(), text3()];
18 } else {
19 return [text1(), text3(), text2()];
20 }
21 }
22
23 @override
24 Widget build(BuildContext context) {
25 return Scaffold(
26 appBar: AppBar(title: const Text('hoge)),
27 body: Center(
28 child: Column(children: widgets()),
29 ),
30 floatingActionButton: FloatingActionButton(
31 onPressed: () {
32 setState(() {
33 viewType = !viewType;
34 });
35 },
36 child: const Icon(Icons.add),
37 ),
38 );
39 }
40}
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。