我试图实现一个功能作为描述:RecyclerView中的每个项目将在5秒后被删除。下面我的代码:删除RecyclerView中的项目
new CountDownTimer(60000, 1000) {
@Override public void onTick(long l) {
Log.v(TAG, "Ticking: " + l);
for (int i = 0, dataLength = mComments.size(); i < dataLength; i++{
RoomMessage item = mComments.get(i);
// item.timeRemaining initial value is 5000
item.timeRemaining -= 1000;
if (item.timeRemaining <= 0) {
mComments.remove(i);
notifyItemRemoved(i);
}
}
}
@Override public void onFinish() {
start();
}
}.start();
应用崩溃,错误消息说,像java.lang.IndexOutOfBoundsException: Index: 4, Size: 4
什么问题吗?
您可以提供完整的日志? –
如果你的尺寸是4,你的索引范围是[0,.. 3]。您不能删除未附加到列表中的内容。 – adnbsr
@adnbsr是的,我很确定范围是[0..3] –