Android - 无法再次打开片段

时间:2014-08-20 19:41:13

标签: java android android-fragments

我打开fragment并在关闭之后不久。

第一次打开和关闭没有问题,但第二次尝试打开它会产生NullPointerException

使用fragment扩展SomeFrag的{​​{1}}类来打开Fragment。要关闭它,我调用closeFrag()方法。

public class SomeFrag extends Fragment {
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        mRootview = (ViewGroup) inflater.inflate(R.layout.somefrag, container, false); // line with error
        return mRootview;
    }

    public void closeFrag(){
        ((ViewGroup)mRootview.getParent()).removeView(mRootview);
    }
}

为什么我无法再次打开片段?

1 个答案:

答案 0 :(得分:1)

要删除片段,您应该使用事务,例如

getSupportFragmentManager().beginTransaction().remove(fragmentInstance).commit();