【问题标题】:Stacktrace throws exception but couldn't find exception's line number in my classStacktrace 引发异常,但在我的班级中找不到异常的行号
【发布时间】:2012-09-10 08:46:53
【问题描述】:
> 09-10 11:38:07.166: E/AndroidRuntime(11497): FATAL EXCEPTION: main
>     09-10 11:38:07.166: E/AndroidRuntime(11497): java.lang.IndexOutOfBoundsException: Invalid index 1, size is 1
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:257)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at java.util.ArrayList.get(ArrayList.java:311)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:164)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.ListView.dispatchDraw(ListView.java:3062)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.ExpandableListView.dispatchDraw(ExpandableListView.java:233)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.View.draw(View.java:7093)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.AbsListView.draw(AbsListView.java:2699)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1739)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1737)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.View.draw(View.java:6989)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.FrameLayout.draw(FrameLayout.java:361)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1739)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1737)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1737)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1737)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.View.draw(View.java:6989)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.FrameLayout.draw(FrameLayout.java:361)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1739)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.View.draw(View.java:6989)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.FrameLayout.draw(FrameLayout.java:361)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.drawChild(ViewGroup.java:1739)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1466)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.View.draw(View.java:6989)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.widget.FrameLayout.draw(FrameLayout.java:361)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1882)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewRoot.draw(ViewRoot.java:1544)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewRoot.performTraversals(ViewRoot.java:1280)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1882)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.os.Handler.dispatchMessage(Handler.java:99)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.os.Looper.loop(Looper.java:130)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at android.app.ActivityThread.main(ActivityThread.java:3701)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at java.lang.reflect.Method.invokeNative(Native Method)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at java.lang.reflect.Method.invoke(Method.java:507)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:624)
>     09-10 11:38:07.166: E/AndroidRuntime(11497):  at dalvik.system.NativeStart.main(Native Method)

我得到了异常,但没有行号来指向我的班级。那么我怎样才能找到异常呢?谢谢建议

【问题讨论】:

  • 这个问题你解决了吗

标签: android exception expandablelistview expandablelistadapter


【解决方案1】:

HeaderViewListAdapter.java:164

它表明您在 HeaderViewListAdapter.java 类的第 164 行有错误。

【讨论】:

  • 如您所见,HeaderViewListAdapter 是一个 android.widget 类。不在应用中,那么
【解决方案2】:

这里可能发生的事情可能是其中之一:

  • 您将数组传递给适配器,并在显示之前对其进行修改
  • 您覆盖您的适配器以返回与您的数组大小不匹配的 getCount() 值

【讨论】:

  • 这实际上是 HeaderViewListAdapter(框架的一部分)中的错误,当在 ListView 上调用 addHeaderViewaddFooterView 时包装提供的适配器的类
【解决方案3】:

在应用程序启动时设置一个断点,例如在 onCreate() 中,并以调试模式启动。不过,IndexOutOfBoundsException 应该为您提供一些指导,例如,您在代码中的何处访问 ArrayList 对象的值?

【讨论】:

  • 当您在调试模式下运行时,您会看到应用程序如何逐行运行代码,因此您应该能够看到它引发异常的行。
【解决方案4】:

java.lang.IndexOutOfBoundsException:索引 1 无效,大小为 1 这意味着您的数组大小为 1, 您尝试获取 array[1] 而不是 array[0]

请发送代码。

【讨论】:

  • 这不是他的代码,而是 Android,他正在寻求更好地追踪问题。
猜你喜欢
  • 2011-04-17
  • 2018-07-24
  • 2023-01-03
  • 2014-07-29
  • 2014-08-31
  • 1970-01-01
  • 2016-07-14
  • 1970-01-01
  • 2012-08-31
相关资源
最近更新 更多