Android:我在代码序列中有一些错误

时间:2019-04-16 08:24:17

标签: android

此代码序列有问题。

question= Common.questionList.get(questionIndex);

https://imgur.com/a/OFQ28BA 如果我对此行发表评论,则会在第292行出现错误

txt_wrong_answer.setText(String.valueOf(0));

如果我也对此发表评论,则程序会运行,但无法完成游戏。 https://imgur.com/a/Qa0OKzZ

2 个答案:

答案 0 :(得分:0)

替换此问题= Common.questionList.get(questionIndex);到以下代码

if(questionIndex >= 0 && questionIndex < Common.questionList.size()){
     question= Common.questionList.get(questionIndex);
}

答案 1 :(得分:0)

对于第一个错误,您正在访问数组的-1。没有这样的位置,因此引发了ArrayOutOfBounds异常。我将默认值0设为-1。 questionIndex = getArguments().getInt("index", 0) 我也建议检查或确保questions数组至少有一个元素。因为如果为空,则0也将引发相同的错误。

对于第二个错误,您的参考文献txt_wrong_answer尚未在onPrepareOptionsMenu中设置。确保在调用.setText之前对其进行了设置,或者使用if块if (txt_wrong_answer != null)

处理