Android ArrayIndexOutOfBoundsException类视图

时间:2015-10-12 18:32:19

标签: android arrays view

错误:

locale

在扩展View的类中,我以这种方式获取id的列表:

en

然后,使用此方法,我必须将 id_nome_op eventRect.event.getIdOperatore()进行比较。如果相同,我想将事件添加到数组的 eventRects 即可。谢谢你的帮助

java.lang.ArrayIndexOutOfBoundsException: length=2; index=2
 at WeekView.getMoreEvents(WeekView.java:614)

1 个答案:

答案 0 :(得分:0)

理解您的代码有点困难,但我认为您可能会遇到问题:

for(int j =1;j <=id_nome_op.length;) {
    ArrayList<EventRect> eventRects =newArrayList<EventRect>();
  for(EventRect eventRect : tempEvents){
        if(eventRect.event.getIdOperatore() == id_nome_op[j])
            eventRects.add(eventRect);
  }
    computePositionOfEvents(eventRects);
 j++;

}

访问id_nome_op[j]时。 尝试将循环更改为:

j < id_nome_op.length

正如@Mike M指出的那样,你还需要将你的外循环初始化为0,因为你想获得数组中的所有项目:

for(int j = 0; j < id_nome_op.length;)