Android Studio答题App设计中,实现题目答题情况统计,及知识点答题情况统计的代码,并给出详细步骤,能在eclipse中安卓模拟器呈现出来
时间: 2024-03-07 18:49:41 浏览: 213
基于Android Studio开发的安卓的答题app
5星 · 资源好评率100%
以下是实现题目答题情况统计和知识点答题情况统计的代码,以及在Eclipse中运行并在安卓模拟器中呈现的详细步骤:
1. 在Android Studio中创建一个新的项目,命名为"QuizApp"。
2. 在项目中创建两个Activity,分别命名为"QuizActivity"和"SummaryActivity"。
3. 在QuizActivity中,创建一个题目列表,并在点击提交按钮后,将答题情况存储到SharedPreferences中。
以下是实现题目答题情况统计的代码:
```java
public class QuizActivity extends AppCompatActivity {
private List<Question> mQuestionList;
private int mCurrentIndex = 0;
private TextView mQuestionTextView;
private Button mTrueButton;
private Button mFalseButton;
private Button mNextButton;
private Button mSubmitButton;
private SharedPreferences mPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_quiz);
mQuestionList = new ArrayList<>();
mQuestionList.add(new Question("Question 1?", true));
mQuestionList.add(new Question("Question 2?", false));
mQuestionList.add(new Question("Question 3?", true));
mQuestionTextView = findViewById(R.id.question_text_view);
mTrueButton = findViewById(R.id.true_button);
mFalseButton = findViewById(R.id.false_button);
mNextButton = findViewById(R.id.next_button);
mSubmitButton = findViewById(R.id.submit_button);
mPreferences = PreferenceManager.getDefaultSharedPreferences(this);
updateQuestion();
mTrueButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
checkAnswer(true);
}
});
mFalseButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
checkAnswer(false);
}
});
mNextButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mCurrentIndex = (mCurrentIndex + 1) % mQuestionList.size();
updateQuestion();
}
});
mSubmitButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences.Editor editor = mPreferences.edit();
int correctCount = 0;
for (Question question : mQuestionList) {
if (question.isAnsweredCorrectly()) {
correctCount++;
}
editor.putBoolean(question.getText(), question.isAnsweredCorrectly());
}
editor.putInt("SCORE", correctCount);
editor.apply();
Intent intent = new Intent(QuizActivity.this, SummaryActivity.class);
startActivity(intent);
finish();
}
});
}
private void updateQuestion() {
String questionText = mQuestionList.get(mCurrentIndex).getText();
mQuestionTextView.setText(questionText);
}
private void checkAnswer(boolean userAnswer) {
Question question = mQuestionList.get(mCurrentIndex);
boolean isAnswerCorrect = question.getAnswer() == userAnswer;
question.setAnsweredCorrectly(isAnswerCorrect);
}
}
```
在上述代码中,每当用户提交答案时,程序会将题目的答题情况存储到SharedPreferences中。在SummaryActivity中,我们将使用SharedPreferences中存储的答题情况统计用户的正确率。
以下是实现知识点答题情况统计的代码:
```java
public class SummaryActivity extends AppCompatActivity {
private TextView mScoreTextView;
private TextView mKnowledgeTextView;
private SharedPreferences mPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_summary);
mScoreTextView = findViewById(R.id.score_text_view);
mKnowledgeTextView = findViewById(R.id.knowledge_text_view);
mPreferences = PreferenceManager.getDefaultSharedPreferences(this);
int correctCount = mPreferences.getInt("SCORE", 0);
int totalCount = mPreferences.getAll().size() - 1;
int scorePercentage = (int) (correctCount * 100.0 / totalCount);
mScoreTextView.setText(getString(R.string.score_result, scorePercentage));
StringBuilder stringBuilder = new StringBuilder();
Map<String, ?> allEntries = mPreferences.getAll();
for (Map.Entry<String, ?> entry : allEntries.entrySet()) {
String key = entry.getKey();
if (!key.equals("SCORE")) {
boolean isAnswerCorrect = mPreferences.getBoolean(key, false);
if (isAnswerCorrect) {
stringBuilder.append(key).append(" - Correct\n");
} else {
stringBuilder.append(key).append(" - Incorrect\n");
}
}
}
mKnowledgeTextView.setText(stringBuilder.toString());
}
}
```
在上述代码中,我们通过SharedPreferences获取题目的答题情况,并统计用户的正确率。同时,我们还在知识点答题情况统计中,将用户答对和答错的题目列举出来。
4. 在Eclipse中,打开Android SDK Manager,确保已安装Android SDK Build-tools和所需的API Level。
5. 在Eclipse中,导入上述代码所在的项目。
6. 在Eclipse中,点击菜单栏中的Run -> Run Configurations,打开Run Configurations窗口。
7. 在Run Configurations窗口中,选择Android Application,并点击New按钮创建一个新的配置。
8. 在新建配置的窗口中,输入配置的名称,然后在左侧的Project下拉框中选择QuizApp项目。
9. 在右侧的Target下拉框中选择所需的模拟器,然后点击Apply。
10. 点击Run按钮运行程序,程序将会在模拟器中运行,并在模拟器的屏幕上呈现出来。
注意:为了在Eclipse中运行Android程序,需要在电脑上安装Android Development Kit(ADK)和Android SDK,并设置好相应的环境变量。
阅读全文