1

我正在使用 Fragments 和 Sherlock 操作栏开发 android 应用程序,我正在使用该方法

块引用

getSherlockActivity().getSupportFragmentManager().popBackStack();

用于返回以前的片段。有时它运行良好,但有时它会出现NULL POINTER异常。解决方案是什么?

4

3 回答 3

0

popBackStack()不会导致 NullPointerException。我创建了一段代码并连续多次调用它 - 当没有什么可以弹出时。它只是让当前片段可见并且什么都不做。我认为问题不在于 popBackStack 方法,但是,我没有使用 ABS,只是一个常规的 android 片段 API。你能提供一段代码吗?也许问题出在其他地方?

于 2014-04-04T07:34:58.517 回答
0

在尝试弹出它之前,您应该检查您的 backstack 上是否有任何片段。

if( getSherlockActivity().getSupportFragmentManager().getBackStackEntryCount() > 0 )
    getSherlockActivity().getSupportFragmentManager().popBackStack();
于 2013-01-31T08:13:57.703 回答
0

我的猜测是没有什么可以流行的了。尝试在弹出之前检查它是否存在。

于 2013-01-31T06:51:36.790 回答