質問編集履歴

1

追加の質問のためのサンプルコードを追記した。

2020/11/01 03:15

投稿

moriman
moriman

スコア615

test CHANGED
File without changes
test CHANGED
@@ -137,3 +137,99 @@
137
137
  とりあえずratingsとstarsを関数にしたらエラーは消えたのですが、
138
138
 
139
139
  上記コードでエラーが出る原因は何でしょうか?
140
+
141
+
142
+
143
+ ---
144
+
145
+ 2020/11/1/12:13追記
146
+
147
+ サンプルコード
148
+
149
+ ```ここに言語を入力
150
+
151
+ import 'package:flutter/material.dart';
152
+
153
+ //import 'package:flutter/rendering.dart' show debugPaintSizeEnabled;
154
+
155
+
156
+
157
+ void main() {
158
+
159
+ //debugPaintSizeEnabled = true; // Remove to suppress visual layout
160
+
161
+ //↓(1)→結果: x=10,y=10
162
+
163
+ //runApp(MyApp._internal(x:10,y:10));
164
+
165
+
166
+
167
+ //(2)→結果: x=20,y=0
168
+
169
+ //runApp(MyApp.red(20));
170
+
171
+
172
+
173
+ //(3)→結果: x=30,y=0
174
+
175
+ runApp(MyApp(30));
176
+
177
+ }
178
+
179
+
180
+
181
+ class MyApp extends StatelessWidget {
182
+
183
+ MyApp._internal({this.x, this.y}); //生成的コンストラクタ
184
+
185
+
186
+
187
+ MyApp.red(int x) : this._internal(x: x, y: 0); //リダイレクトコンストラクタ
188
+
189
+
190
+
191
+ factory MyApp(x) { //factoryコンストラクタ
192
+
193
+ MyApp _ma = MyApp._internal(x: x, y: 0);
194
+
195
+ return _ma;
196
+
197
+ }
198
+
199
+
200
+
201
+ final int x;
202
+
203
+ final int y;
204
+
205
+
206
+
207
+ @override
208
+
209
+ Widget build(BuildContext context) {
210
+
211
+ return MaterialApp(
212
+
213
+ title: 'Flutter layout demo',
214
+
215
+ home: Scaffold(
216
+
217
+ appBar: AppBar(
218
+
219
+ title: Text('Flutter layout demo'),
220
+
221
+ ),
222
+
223
+ // Change to buildColumn() for the other column example
224
+
225
+ body: Row(children: [Text("x=$x"), Text("y=$y")]),
226
+
227
+ ),
228
+
229
+ );
230
+
231
+ }
232
+
233
+ }
234
+
235
+ ```