我开发了一个Android应用程序并且运行得很好,但有时它会抛出一个奇怪的错误:
如果应用程序之前已经执行过并且您再次执行它,有时它会引发下一个错误:android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
。
这个的奇怪部分(至少对我而言,因为我不是Android专家)是,除此之外不会总是发生,是错误日志中出现的第一个点是{{ 1}}我的main.java行,我在那行之前什么也没有。
这是我的onStart方法:
super.onStart();
以下是错误日志:
@Override
protected void onStart() {
super.onStart();
mPager.setOffscreenPageLimit(4);
mPager.setPageTransformer(true, new ZoomOutPageTransformer());
}
这怎么可能?
答案 0 :(得分:1)
onStart()
执行任何挂起的片段事务。在这种情况下,它涉及实例化您的FragmentAsig
,并且存在错误。具体做法是:
at mysql.BaseDatos.getAsignaturaDataBase(BaseDatos.java:233)
at com.tfd.myapp.FragmentAsig.onCreateView(FragmentAsig.java:269)
您在没有数据的getInt()
上呼叫Cursor
。你需要检查一下,例如moveToFirst()
成功了。