4択クイズアプリ

Android Studio 4択クイズアプリ開発講座 第5回「正解・不正解チェック」

ここまでの記事はこちら
 

前回はクイズを表示できるようにしたので、今回はクイズの正解・不正解を判定できるようにしていきます。

第2回「クイズ画面の作成」で、回答ボタンに「android:onClick="checkAnswer"」と書きました。
 

 

これは「このボタンが押されたらcheckAnswerメソッドを呼びます」という意味です。
 

今回はこのcheckAnswerメソッドを追加して、クイズの正解・不正解を判定できるようにします。また、画像のようにダイアログを使って正解・不正解を表示してみます。
 

 

ではMainActivity.javaを開いて始めていきましょう!
 
 


 

動画

【Android Studio】4択クイズアプリ開発講座 #5 正解・不正解の判定

 
 

クイズの出題数を設定する

まずはクイズを何問出題するかを決めます。

3行目を追加してください。

 
ここではクイズを5問出題するように設定しました。
 

10問出題したい場合は

static final private int QUIZ_COUNT = 10;

としてください。
 

注意

出題済みのクイズはquizArrayから削除されていきます。出題数はquizArrayの要素数を超えない範囲に設定してください。

 
 

checkAnswerメソッド

5~36行目を追加します。

 

必要なimport

前回までと同じように「alt + return」で警告を消します。
 

 
 
追加されるのは、以下3つです。

import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.view.View;

 

どの回答ボタンが押されたかを取得

8行目 Button answerBtn = findViewById(view.getId());
9行目 String btnText = answerBtn.getText().toString();

押された回答ボタンを見つけ、そのボタンのテキストを取得しています。
 

正解・不正解の判定

12行目 if (btnText.equals(rightAnswer)) {

回答ボタンのテキストとrightAnswerが一致するかで、正解・不正解を判定します。

正解の場合は、このあと作成するダイアログのタイトルを「正解!」とします。また、正解数をカウントするrightAnswerCountに1を足します。

不正解の場合は、ダイアログのタイトルを「不正解…」とします。
 

ダイアログを表示する

20行目からはダイアログを作成しています。

まずは、タイトル・メッセージ・OKボタンを追加します。


 
 

23行目からはOKボタンが押された時の処理を書いています。

if (quizCount == QUIZ_COUNT) {
 // 結果画面へ移動
} else {
 quizCount++;
 showNextQuiz();
}

 
最初に設定した出題数QUIZ_COUNTとquizCountが同じになったら、結果画面に移動します。QUIZ_COUNTに達していない場合はquizCountに1を足し、再びshowNextQuizメソッドを呼びます。
 

 
 
これでクイズを続けて出題できるようになります。
 
 

エミュレーターで確認

ここまで出来たらエミュレーターでアプリを起動してみてください。
正解・不正解の判定が正しく行われ、クイズが連続して出題されるでしょうか?

もし上手く動かない場合は、次のサンプルコードを確認してみてください。
 
 

次に行うこと

次回はクイズ結果を表示する画面を作成していきます。

第6回「結果画面の作成」に進む

 
ここまでのサンプルコード

 
 

ABOUT ME
Sara
Sara
「わかりやすく・シンプル」をモットーに、携帯アプリ・ウェブアプリの作り方を紹介します。 独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています🙂
独学は難しそうと感じたら

 
独学でプログラミングを勉強するのは難しそう、効率的にプログラミングを学びたいという方はオンラインスクールがオススメです。

オンラインスクールを選ぶときのポイント

  • 無料体験があること
  • 個別サポートがあること

自分にあったスタイルを見つけるために、無料体験のご利用をオススメします。(無料体験後に自分には合わないなと感じたらハッキリ断ってしまって問題ありません。)
 
個別サポートもプログラミング学習に挫折しないために重要なポイントです。エラーや困った時にすぐに個別対応をしてくれるスクールを利用して下さい。

ここでは3つのオンラインスクールを紹介します。
全て無料体験がありますので、ぜひ自分に合ったスクールを見つけてみて下さい????
 

1. TechAcademy(テックアカデミー)

オンライン完結で勉強できるスクールで、コースがとても充実しています。チャットで質問すればすぐに回答を得られるのが一番のおすすめポイントです。
オリジナルのサービスやアプリの開発もサポートしてくれるので、開発したいものが決まっている人にもオススメです。

無料体験はこちら

2. CodeCamp(コードキャンプ)

一対一で受講できる個別指導のプログラミングスクールです。
Webデザイン・Webサービス開発・アプリ開発などを幅広く学習することができます。
マンツーマンなので自分のペースで学習できて、質問もその都度できるのがメリットです。

無料体験レッスンはこちら

3. Treehouse

英語でも良い、英語とプログラミングを同時に勉強したいという方は Treehouse がオススメです。月25ドルで始めることができて、たくさんのプログラミング言語を学ぶことができます。
個別サポートはありませんが、掲示板が充実しています。ほとんどの場合、質問してから30分程度で回答を得ることができます。

7日間の無料体験はこちら

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA