Android Studio Chipmunk | 2021.2.1 での動作確認を完了しました。(2022年5月)
この講座の目次はこちら
いよいよ最後の仕上げです。
クイズが終わったら結果画面に移動して、クイズの正解数を表示してみましょう。
目次
動画
テキスト
1. View Binding の用意
クイズ画面と同じく ViewBinding を使えるようにします。
ResultActivity.kt を開いて5・9・14~16行目を追加します。
2. 正解数を ResultActivity に渡す
正解数を結果画面に表示できるように、rightAnswerCount(正解数)を MainActivity(クイズ画面)から ResultActivity(結果画面)へ渡します。
MainActivity.kt の checkQuizCount 関数に4~6行目を追加してください。
必要なimport
3行目あたりに import が追加されます。
Intent(インテント)の使い方
新しくアクティビティを開くときは Intent(インテント)クラスを使います。
startActivity(intent)
context(コンテキスト)には現在のアクティビティ、cls には 表示するアクティビティを Class オブジェクトで書きます。
次に作成したインテントを startActivity に渡すことでアクティビティを表示することができます。
今回は rightAnswerCount(正解数)を ResultActivity(結果画面)で使いたいので、startActivity の前にこの1行を書いています。
putExtra(取り出す時に使うキー, 渡したい値) と書くことで、遷移先のアクティビティに値を渡すことができます。
キーは String 型(文字列)ですが、値には String, Int, Float などをセットすることができます。
3. 正解数の表示
結果画面で正解数を受け取って表示します。
ResultActivity.kt を開いて、5・8行目を追加します。
5行目:正解数を取得
値を渡す時に使ったキー RIGHT_ANSWER_COUNT を使って正解数を受け取ります。
正解数は Int 型だったので getIntExtra メソッドを使います。
書き方は getIntExtra(キー, 値が取得できなかった場合の値) となります。
8行目:正解数を表示
resultLabel に正解数を「3 / 5」と表示します。
クイズ画面の countLabel と同じように %d の部分に数値 score を入れています。
4. 「もう一度」ボタン
ResultActivity.kt の onCreate 関数に6~8行目を追加します。
今回は onClick 属性ではなく setOnClickListener を使いました。
ここでも Intent を使ってアクティビティを切り替えますが、MainActivity に渡す値はないので1行にまとめて書いています。
5. アプリの実行
ここでアプリを実行してみてください。
正解数が ResultActivity に渡されて、結果画面に正しく表示されたでしょうか?
完成
お疲れ様でした、これで完成です!
「アプリ開発って意外と簡単だな」と感じて頂けていれば嬉しい限りです。クイズ内容は自由にアレンジして構わないので、ぜひオリジナルのアプリを作ってみてくださいね

Android 開発のための Kotlin 入門講座

Kotlin の入門書や入門講座では「文法を学んでもそれをいつどこで使うのか分からない」「アプリ開発との関連が分からない」ということがよくあります。
Android 開発のための Kotlin 入門講座では「Kotlin 文法を学ぶ→アプリ開発する」を繰り返して、合計3つのアプリを開発していきます。
- とにかく Android アプリを開発してみたい!
- Android 開発に興味があるけれど、何から始めれば良いかわからない
- プログラミングに挫折したことがある
という方にお勧めの講座になっています。
この講座でプログラマーへの第一歩を踏み出しましょう