热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

AndroidAPP编写简单答题器

这篇文章主要为大家详细介绍了AndroidAPP编写简单答题器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文为大家分享了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. 
 


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • RecyclerView初步学习(一)
    RecyclerView初步学习(一)ReCyclerView提供了一种插件式的编程模式,除了提供ViewHolder缓存模式,还可以自定义动画,分割符,布局样式,相比于传统的ListVi ... [详细]
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 本文介绍如何使用布局文件在Android应用中排列多行TextView和Button,使其占据屏幕的特定比例,并提供示例代码以帮助理解和实现。 ... [详细]
  • 本文详细介绍如何使用arm-eabi-gdb调试Android平台上的C/C++程序。通过具体步骤和实用技巧,帮助开发者更高效地进行调试工作。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 在当前众多持久层框架中,MyBatis(前身为iBatis)凭借其轻量级、易用性和对SQL的直接支持,成为许多开发者的首选。本文将详细探讨MyBatis的核心概念、设计理念及其优势。 ... [详细]
  • 将Web服务部署到Tomcat
    本文介绍了如何在JDeveloper 12c中创建一个Java项目,并将其打包为Web服务,然后部署到Tomcat服务器。内容涵盖从项目创建、编写Web服务代码、配置相关XML文件到最终的本地部署和验证。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 本文介绍如何在 Unity 的 XML 配置文件中,将参数传递给自定义生命周期管理器的构造函数。我们将详细探讨 CustomLifetimeManager 类的实现及其配置方法。 ... [详细]
  • 本文详细介绍了 Java 中 org.apache.xmlbeans.SchemaType 类的 getBaseEnumType() 方法,提供了多个代码示例,并解释了其在不同场景下的使用方法。 ... [详细]
  • 本文详细介绍了如何解决MyBatis中常见的BindingException错误,提供了多种排查和修复方法,确保Mapper接口与XML文件的正确配置。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文探讨了在通过 API 端点调用时,使用猫鼬(Mongoose)的 findOne 方法总是返回 null 的问题,并提供了详细的解决方案和建议。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
author-avatar
小HuLkfz_264
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有