![](/img/trans.png)
[英]How to fix Fatal Exception: java.lang.IndexOutOfBoundsException Index: 0, Size: 1
[英]Fatal Exception: java.lang.IndexOutOfBoundsException Invalid index 0, size is 0
我使用 Firebase Crashlytics,我看到很多用户都有这个崩溃问题。 我找不到任何解决这个问题的方法,我的 40% 的用户都因为这个错误而崩溃。 我该如何解决这个问题?
谢谢你。
"Fatal Exception: java.lang.IndexOutOfBoundsException
Invalid index 0, size is 0"
ui.TracksAdapter.getItem (TracksAdapter.java:54)
ui.TracksAdapter.getItemId (TracksAdapter.java:59)
我的 TracksAdapter 代码:
public TracksAdapter(Context context, List<Track> rowItems) {
this.context = context;
this.trackItems = rowItems;
}
@Override
public int getCount() {
return trackItems.size();
}
@Override
public Object getItem(int position) {
pos = position;
return trackItems.get(position); // Line 54.
}
@Override
public long getItemId(int position) {
return trackItems.indexOf(getItem(position)); // Line 59
}
您应该始终检查您传递给适配器构造函数的参数不是 null 并且不是空的,但如果您不这样做,您可以在getItem
方法中检查:
@Override
public Object getItem(int position) {
pos = position;
if (trackItems != null && trackItems.size() > position) {
return trackItems.get(position); // Line 54.
}
return null;
}
在调用getItemId
和getItem
之前检查getCount() > position
是否确认trackItems中有项目
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.