前回は、制限時間(20秒)を設定したが、今回は、正しくタップした数の最高点を保存し、毎回その過去の最高点と比較できるようにした。もし、過去の最高点より多くのタップ数を記録した場合は、その数が最高点として保存される。
説明より見る方が早い。
実行画面:
終了時のMessage Dialogには、OKボタンをタップしたら、リセットされるとなっているが、リセットされなかったので要修正。Message Dialogの内容ももう少しわかりやすくしたい。
スクリーンのデザイン:
Clear DBボタンを追加。これは、最高点を格納しているTinyDB(MIT App Inventorに備え付けの簡単なデータベースで、タグと値で構成されている)のデータを初期化するためのボタン。間違って過去の最高点を消さないように、「長押し」にした。(ブロック・コードの通り)
ブロック・コード:
最高点の保存、読み出し、DB削除の部分のみ。(TinyDB1と書かれたcomponent)
制限時間(20秒)を過ぎれば、Message Dialogが表示され、過去の最高点と比較表示される。また、今回の得点が過去の最高点より多い場合は、最高点が書き換えられ、最高点として表示される。
長押し(LongClick)するとTinyDBのデータが全て削除される。このcomponentは若干問題が生じる場合もあり、対応策要検討。
アプリが立ち上がった時の初期化項目の一つとして、TinyDBに「maxScore」をキーとして保存されている値を変数maxScoreに割り当てる。(初めての場合、値は、"")
startボタンをタップした時、TinyDBより過去の最高点を取得。
※コメント投稿者のブログIDはブログ作成者のみに通知されます