android - 检查输入的答案是否匹配数组 xml android

标签 android arrays

我正在创建一个测验,我有一个用于问题的 TextView ,一个用于答案的文本字段,以及一个用于检查答案是否正确的按钮。我有 2 个 xml 文件,一个用于问题数组,另一个用于答案数组。

public class ArrayAct extends Activity{
Button mButton;
EditText mEdit;
String [] mArray;
String [] mArray1;

@Override
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.arrayact);


    mArray = getResources().getStringArray(R.array.Answers);
    mArray1 = getResources().getStringArray(R.array.Questions);

    final Button doneBtn = (Button)findViewById(R.id.doneBtn);
    final EditText text = (EditText)findViewById(R.id.txtFld);

    doneBtn.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            if (Arrays.asList(mArray).contains(text.getText().toString()))
                Toast.makeText(getApplicationContext(), "Correct!", Toast.LENGTH_SHORT).show();
            else 
                Toast.makeText(getApplicationContext(), "Incorrect.Please try again.", Toast.LENGTH_SHORT).show();

        }
    });

    TextView textView = (TextView)findViewById(R.id.txtView); 
    Random random = new Random();

    int maxIndex = mArray1.length;
    int generatedIndex = random.nextInt(maxIndex);

    textView.setText(mArray1[generatedIndex]);   
}

我应该实现什么代码,以便检查输入的答案是否与问题的正确答案匹配?

最佳答案

尝试这种方式,希望这能帮助您解决问题。

public class ArrayAct extends Activity {

    private Button doneBtn;
    private EditText text;
    private TextView textView;
    private String [] mArray;
    private String [] mArray1;
    private int generatedIndex;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.arrayact);

        textView = (TextView)findViewById(R.id.txtView);
        doneBtn = (Button)findViewById(R.id.doneBtn);
        text = (EditText)findViewById(R.id.txtFld);

        mArray = getResources().getStringArray(R.array.Answers);
        mArray1 = getResources().getStringArray(R.array.Questions);

        doneBtn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                if (mArray[generatedIndex].equals(text.getText().toString()))
                    Toast.makeText(getApplicationContext(), "Correct!", Toast.LENGTH_SHORT).show();
                else
                    Toast.makeText(getApplicationContext(), "Incorrect.Please try again.", Toast.LENGTH_SHORT).show();

            }
        });

        Random random = new Random();

        generatedIndex = random.nextInt(mArray1.length);
        textView.setText(mArray1[generatedIndex]);
    }
}

关于android - 检查输入的答案是否匹配数组 xml android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25502626/

相关文章:

android - 使用 JNI 将大型 C++ 库编译成 Android NDK - Makefile 问题

javascript - 使用 Chart.Js 从数组绘制散点图

javascript - 在javascript中将多个打乱的数组连接成一个大的随机数组

javascript - 如何在结果中显示我现在拥有的数据?

android - JellyBean 4.3 中的 GoogleTTSService 的名称是什么?

android - 在android中声明静态 View 是个好主意吗?

android - 没有数据库锁!在安卓中

java - 如何使用 runOnUiThread 更新 TextView

javascript - 为什么所有表元素都被扔到第一个数组索引中?

Java : Not Able to cast jsonobject to Json array