此答题器可以通过Next按钮选择下一题,新写题目的类Question,有两个成员变量。

   
package com.android.testrecord;/** * Created by wang on 16-10-19. */public class Question {    private int mTextResId;    private boolean mAnswerTrue;    public Question(int textResId, boolean answerTrue) {        mTextResId = textResId;        mAnswerTrue = answerTrue;    }    public int getTextResId() {        return mTextResId;    }    public boolean isAnswerTrue() {        return mAnswerTrue;    }    public void setTextResId(int textResId) {        mTextResId = textResId;    }    public void setAnswerTrue(boolean answerTrue) {        mAnswerTrue = answerTrue;    }}
package com.android.testrecord;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;import android.widget.Toast;public class QuizActivity extends AppCompatActivity {    private Button mTrueButton;    private Button mFalseButton;    private Button mNextButton;    private TextView mQuestionTextView;    private Question[] mQuestionBank = new Question[] {            new Question(R.string.question_oceans, true),            new Question(R.string.question_mideast, false),            new Question(R.string.question_africa, false),            new Question(R.string.question_americas,true),            new Question(R.string.question_asia, true),    };    private int mCurrentIndex = 0;    private void updateQuestion() {        int question = mQuestionBank[mCurrentIndex].getTextResId();        mQuestionTextView.setText(question);    }    private void checkAnswer(boolean userProessedTrue) {        boolean answerIsTrue = mQuestionBank[mCurrentIndex].isAnswerTrue();        int messageId = 0;        if (userProessedTrue == answerIsTrue)            messageId = R.string.correct_toast;        else            messageId = R.string.incorrect_toast;        Toast.makeText(this, messageId, Toast.LENGTH_SHORT).show();    }    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_quiz);        mQuestionTextView = (TextView) findViewById(R.id.question_test_view);        // int question = mQuestionBank[mCurrentIndex].getTextResId();        // mQuestionTextView.setText(question);        updateQuestion();        mTrueButton = (Button) findViewById(R.id.true_button);        mTrueButton.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                // Does nothing yet, but soon!              /*  Toast.makeText(QuizActivity.this,                        R.string.incorrect_toast,                        Toast.LENGTH_SHORT).show(); */               checkAnswer(true);            }        });        mFalseButton = (Button) findViewById(R.id.false_button);        mFalseButton.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                // Does nothing yet, but soon!             /*   Toast.makeText(QuizActivity.this,                        R.string.correct_toast,                        Toast.LENGTH_SHORT).show();  */                checkAnswer(false);            }        });        mNextButton = (Button) findViewById(R.id.next_button);        mNextButton.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                mCurrentIndex = (mCurrentIndex + 1) % mQuestionBank.length;                // int question = mQuestionBank[mCurrentIndex].getTextResId();                // mQuestionTextView.setText(question);                updateQuestion();            }        });    }}

                
    GeoQuiz            Constantinople is the largest city in Turkey.        True    False    Correct!    Incorrect!    Settings    Next    The Pacific Ocean is larger than the Atlantic Ocean.    The Suez Canal connects the Red Sea and the Indian Ocean.    The source of the Nile River is in Egypt.    The Amazon River is the longest river in the Americas.    Lake Baikal is the world\'s oldest and deepest freshwater lake.




更多相关文章

  1. Android学习笔记(6)——Android——LoginDemo
  2. Android中浮动按钮
  3. Android按钮实现点击事件的四种方式
  4. Android(安卓)源码编译环境流程
  5. android 开发环境搭建(Windows平台)
  6. Android设置变量值之——与或非(&、|、~)
  7. Android(安卓)Studio +Cordova +ionic 环境搭建
  8. Android中定义接口的方法
  9. Android单选按钮对话框用法实例分析

随机推荐

  1. [Android] View控件显示隐藏动画效果
  2. Android(安卓)Camera2 Hal3(二)startPrev
  3. android中的AIDL学习笔记
  4. Android中基本Dialog对话框
  5. 天气预报(三)
  6. Android(安卓)使用RecycleView实现吸附小
  7. Android启动关闭Activity
  8. Android星级评分条
  9. Android(安卓)RatingBar控件
  10. 欲了解Android(安卓)Studio,必先知道Grad