我只在适配器的getItem
处获得了以下异常。可能是设备或连接问题,但我的应用程序崩溃了。如何确保我的应用程序在此异常时崩溃设备有问题吗?
java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
适配器
@Override
public Object getItem(int position) {
return items.get(position);
}
答案 0 :(得分:2)
@Override
public Object getItem(int position) {
if(items.size() == 0) {
return null;
}
return items.get(position);
}
答案 1 :(得分:0)
有两种方法可以解决这个问题:
第一方式:
您应在 BaseAdapter :
中添加以下代码 @Override
public int getCount() {
return items.size();
}
它将返回ArrayList的元素数。
在你的情况下,如果ArrayList为空,那么它将返回0,因此getItem(int pos)
将不会调用。
第二方式:
if(!item.isEmpty()){
// Set Adapter Here
}else{
// No data in ArrayList
}
希望它会对你有所帮助。