在我的活动中,我希望平均用户提交的评分显示在评分栏中。
用户评级被调用,然后我用这些值填充一个 ArrayList。
这部分代码有效,例如: I can setRating(array_list.get(index))
,并显示正确的评级。
我在一个线程中提取数据,然后尝试在以下处理程序中设置评级:
h.postDelayed(new Runnable() {
public void run () {
if (t.getState() == Thread.State.TERMINATED) {
int sum = 0;
for(int i = 0; i == products.size(); i++)
{
sum = sum + products.get(i); //line 256
}
int x = Math.round(sum / products.size());
ratingbar1.setRating(x);
return;
} else {
h.postDelayed(this, 1000);
}
}
}
, 1000);
打开时应用程序崩溃,我在 logCat 中收到以下错误:
10-27 00:06:31.209: E/AndroidRuntime(859): FATAL EXCEPTION: main
10-27 00:06:31.209: E/AndroidRuntime(859): java.lang.IndexOutOfBoundsException: Invalid index 15, size is 15
10-27 00:06:31.209: E/AndroidRuntime(859): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:257)
10-27 00:06:31.209: E/AndroidRuntime(859): at java.util.ArrayList.get(ArrayList.java:311)
10-27 00:06:31.209: E/AndroidRuntime(859): at com.example.hikebuddy.Lion$6.run(Lion.java:256)
我试过玩这个,但似乎不能再想了。
任何帮助将不胜感激。