我有一个带有几个列表片段的mainActivity,例如A,B,C和D.这些片段在主要活动中的导航是A-> B-> C-> D.
从片段D中开始新的detailsActivity。当我按下后退按钮时在detailsActivity上,我应该使用选定的片段返回mainActivity。
除了android 4.3之外,这在Android的所有版本中都能正常工作。我得到了NullPointerException。我观察到的差异是在android 4.3上对onAreate方法的onAreate方法在mainActivity上调用,这在以前版本的andriod中没有发生。我无法找到解决方法,请帮助!!
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.main/com.app.main.MainActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.widget.ArrayAdapter.getCount(ArrayAdapter.java:330)
at android.widget.ListView.setAdapter(ListView.java:463)
at android.support.v4.app.ListFragment.setListAdapter(ListFragment.java:182)
at android.support.v4.app.ListFragment.ensureList(ListFragment.java:365)
at android.support.v4.app.ListFragment.onViewCreated(ListFragment.java:145)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:941)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1086)
at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1877)
at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:552)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171)
at android.app.Activity.performStart(Activity.java:5143)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184)
答案 0 :(得分:0)
在ListFragment初始化期间,ArrayAdapter.getCount发生崩溃,异常是NullPointerException。这意味着支持ListView的适配器正在使用null List<T>
对象进行初始化。您应该查看您正在呼叫setListAdapter
的位置以及初始化传入其中的列表的位置。您需要确保首先初始化您的列表。
如果您需要更具体的推荐,请发布您的ListFragment代码。