Flutterで売れるアプリを作ってみようPart4 CPUと正々堂々と対戦する

ほのぼのリバーシ

リバーシづくり4日目です

コンピュータがルールを無視してくるのでその修正をしています

最初はこちら、前回はこちら、次回はこちらを参照してください

今できてるもの

コンピュータがルールを理解して正々堂々と勝負できるようになりました

とはいえ弱すぎます

学んだこと

List.whereの結果

List.whereの結果はIterableなのでListで受け取るときはtoListする

List<int> list = [1,2,3,4,5];
Iterable<int> list2 = list.where((element) => element.isEven);
print(list2);
List<int> list3 = list.where((element) => element.isEven).toList();
print(list3);

// 実行結果
(2, 4)
[2, 4]

ユーザの入力フォームはFormを使う

  • ユーザの入力画面はFormWidgetを使う
  • テキスト入力はTextFormField
  • FocusNodeでアクティブな入力フォームを変更できる
  • フォーカスのコントロールはFocusScopeで変更できる
FocusScope.of(context).requestFocus(フォーカスノード)
  • FocusNodeはメモリリークするのでWidgetのdispose時にFocusNodeもdisposeする
  • 入力エラー時のメッセージはvalidatorを使うと良い、正常時はnullを返す
  • FormのkeyにGlobalKey<FormState>();で取得した値を設定するとForm外からFormを操作できる
final formKey =GlobalKey<FormState>();
Form(
  key: formKey,
…
)

次にやること

コンピュータを強くする

コメント

タイトルとURLをコピーしました