回答編集履歴
1
回答の追記
test
CHANGED
@@ -17,3 +17,49 @@
|
|
17
17
|
例えば、男性というボタンが選択された瞬間に「男性(gender.male)という結果」が`_gender`変数(用意した変数)に代入されます。
|
18
18
|
|
19
19
|
質問の意図はまた別でしょうか。。?
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
#### 追記
|
24
|
+
|
25
|
+
_genderは gender型の定数値です。
|
26
|
+
|
27
|
+
enumはDartに限った機能ではなく、一般的にコードの見通しをよくしたり、バグやタイプミスを減らすメリット等があります。
|
28
|
+
|
29
|
+
[Dart列挙型](https://dart.dev/guides/language/language-tour#enumerated-types)
|
30
|
+
|
31
|
+
[Enumの特徴や使い方や文字列に変換する方法についてまとめてみた](https://qiita.com/arthur_foreign/items/b40820c5f3a0f06ffe08)
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
男の方が選択されていたら、この人は男です。女の方が選択されていたら、この人は女です。と画面に表示する
|
36
|
+
|
37
|
+
やり方はいろいろ考えられますので、一例を下記に記載します。
|
38
|
+
|
39
|
+
```
|
40
|
+
|
41
|
+
Text((() {
|
42
|
+
|
43
|
+
switch (_gender) {
|
44
|
+
|
45
|
+
case gender.male:
|
46
|
+
|
47
|
+
return 'この人は男です。';
|
48
|
+
|
49
|
+
case gender.female:
|
50
|
+
|
51
|
+
return 'この人は女です。';
|
52
|
+
|
53
|
+
}
|
54
|
+
|
55
|
+
}()))
|
56
|
+
|
57
|
+
```
|
58
|
+
|
59
|
+
三項演算子バージョン(このような書き方が嫌いな人もいるのでチームで開発するときは要注意)
|
60
|
+
|
61
|
+
```
|
62
|
+
|
63
|
+
Text(_gender == gender.male ? 'この人は男です。' : 'この人は女です。')
|
64
|
+
|
65
|
+
```
|