我正在以测验的方式处理android中的问题/答案应用程序,而我无法想出一种正确实现单选按钮值的方法。该值取决于答案是正确还是错误。
我觉得有几种方法可以实现,但我不确定哪些可能会导致问题,或者只是糟糕的编程习惯。我的问题来自于每次重新启动活动时问题和答案都是随机的。如果它不是随机的,并且我知道哪个答案是正确的,我认为它会更容易,但我想使用随机功能。
为了帮助澄清,我在XML中有单选按钮:
<RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<RadioButton
android:id="@+id/radioAnswerOne"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<RadioButton
android:id="@+id/radioAnswerTwo"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<RadioButton
android:id="@+id/radioAnswerThree"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<RadioButton
android:id="@+id/radioAnswerFour"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</RadioGroup>
我在.java文件中有单选按钮的字符串:
TextView q1A1 = (TextView) findViewById(R.id.radioAnswerOne);
q1A1.setText("This ANSWER is " + global.getA(0, 0));
TextView q1A2 = (TextView) findViewById(R.id.radioAnswerTwo);
q1A2.setText("This ANSWER is " + global.getA(0, 1));
TextView q1A3 = (TextView) findViewById(R.id.radioAnswerThree);
q1A3.setText("This ANSWER is " + global.getA(0, 2));
TextView q1A4 = (TextView) findViewById(R.id.radioAnswerFour);
q1A4.setText("This ANSWER is " + global.getA(0, 3));
字符串是从类中提取的。每个问题都有一个课程。该类有一个问题字符串,以及一个包含4个答案类的数组。答案类有一个字符串和一个状态(true / correct或false / wrong)。我希望现在将状态部分实现到单选按钮中以确定哪一个是正确的,这样如果用户选择该单选按钮并单击按钮(转到下一个问题),则相应地计算/调整等级
我很好奇如何做到这一点。看到问题和答案每次都是随机的,我需要实现一个函数来获取每个问题的状态,并将该状态作为某种附加到按钮的变量。无论选择哪个按钮,该变量都会被拉出并添加到“正确回答的问题”的整数中,然后应用程序继续运行。但我不确定java实现做这样的事情。我的单选按钮应该是Java文件而不是XML才能最好地工作吗?不知道真正最好的方法(如果有的话)。