Android-fragmentはremoveできません


プロジェクトのニーズは、appでfragmentを使用してviewの表示と非表示を実現する必要があります.いくつかの小さな問題が発生しました.ここで記録します.
機能:ボタンをクリックして、fragmentが現れて、再びクリックして、fragmentは隠します;
問題のあるコード:
@Override
    public void onClick(View v) {
        FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        switch (v.getId()) {
            case R.id.openCamBtn:
                if (camFlag == 0) {
                    fragmentTransaction.add(R.id.containerFL, CamFragment.newInstance(), "CamFragmentOpen");
                    camFlag =1;
                } else {
                    fragmentTransaction.remove(fragment);
                    camFlag = 0;
                }
                fragmentTransaction.commit();
                break;
        }
    }

, ,fragment , , remove fragment;

@Override
    public void onClick(View v) {
        FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        switch (v.getId()) {
            case R.id.openCamBtn:
                if (camFlag == 0) {
                    fragmentTransaction.add(R.id.containerFL, CamFragment.newInstance(), "CamFragmentOpen");
                    camFlag =1;
                } else {
                    Fragment fragment=fragmentManager.findFragmentByTag("CamFragmentOpen");
                    fragmentTransaction.remove(fragment);
                    camFlag = 0;
                }
                fragmentTransaction.commit();
                break;
        }
    }

FragmentManager findFragmentByTag() fragment TAG, FragmentTransaction remove() ;

--------------------------------------------------------------------------------------

, add remove commit();

2018 4 23 22:09:25