【问题标题】:java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0 and some time my appcrash and some time work properly [duplicate]java.lang.IndexOutOfBoundsException:无效索引 0,大小为 0,有时我的应用程序崩溃,有时工作正常 [重复]
【发布时间】:2017-03-28 08:54:51
【问题描述】:

错误:

03-28 14:23:08.466 8743-8743/com.furbonics.furbonicsexecutive E/AndroidRuntime: 致命异常: main 进程:com.furbonics.furbonicsexecutive,PID:8743 java.lang.IndexOutOfBoundsException:索引 0 无效,大小为 0 在 java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255) 在 java.util.ArrayList.get(ArrayList.java:308) 在 android.widget.ArrayAdapter.getItem(ArrayAdapter.java:337) 在 android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:390) 在 android.widget.ArrayAdapter.getView(ArrayAdapter.java:362) 在 android.widget.Spinner.makeView(Spinner.java:592) 在 android.widget.Spinner.layout(Spinner.java:540) 在 android.widget.Spinner.onLayout(Spinner.java:502) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 在 android.widget.LinearLayout.layoutHorizo​​ntal(LinearLayout.java:1660) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1436) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:388) 在 android.widget.ScrollView.onLayout(ScrollView.java:1468) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.RelativeLayout.onLayout(RelativeLayout.java:1055) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:388) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:388) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.LinearLayout.setChildFrame(LinearLayout.java:1671) 在 android.widget.LinearLayout.layoutVertical(LinearLayout.java:1525) 在 android.widget.LinearLayout.onLayout(LinearLayout.java:1434) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.widget.FrameLayout.layoutChildren(FrameLayout.java:453) 在 android.widget.FrameLayout.onLayout(FrameLayout.java:388) 在 android.view.View.layout(View.java:14845) 在 android.view.ViewGroup.layout(ViewGroup.java:4631) 在 android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2026) 在 android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1783) 在 android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1039) 在 android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5648) 在 android.view.Choreographer$CallbackRecord.run(Choreographer.java:761) 在 android.view.Choreographer.doCallbacks(Choreographer.java:574) 在 android.view.Choreographer.doFrame(Choreographer.java:544) 在 android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:747) 在 android.os.Handler.handleCallback(Handler.java:733) 在android.o

【问题讨论】:

  • 你在使用recyclerview吗?
  • 你有一个空的 arrayList 有 0 个项目,你调用第一个项目 arrayList.get(0) 。您应该检查列表的大小。

标签: android indexoutofboundsexception


【解决方案1】:

你正试图从一个空数组中读取一个值

lang.IndexOutOfBoundsException: 索引 0 无效,大小为 0。

在访问代码中的值之前验证数组不为空。

【讨论】:

    【解决方案2】:

    这意味着您无法获取数据。首先使用 log 并检查是否显示输出,如果没有,然后检查您的代码是否也在您的代码周围,以便使用 try 和 catch 获取。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-28
      • 2016-05-11
      • 2021-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多