本文为大家分享了Android APP编写的简单答题器,此答题器可以通过Next按钮选择下一题,新写题目的类Question,有两个成员变量。
在微山等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站设计、外贸营销网站建设 网站设计制作按需网站策划,公司网站建设,企业网站建设,品牌网站设计,网络营销推广,成都外贸网站建设公司,微山网站建设费用合理。
java代码:
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; } }
java代码:
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(); } }); } }
xml代码:
代码:
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.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。