天天看点

Fragment使用hide和show进行显示和隐藏

BlankFragment2 blankFragment2;
Fragment fragment;
BlankFragment1 blankFragment1;
fragment=new Fragment( );
blankFragment1=new BlankFragment1( );
blankFragment2=new BlankFragment2( );
@Override
public void onClick(View v) {
    fragmentTransaction=getSupportFragmentManager( ).beginTransaction( );
    switch (v.getId()){
        case R.id.b1:
            show(blankFragment1);
            break;
        case R.id.b2:
            show(blankFragment2);
            break;
    }
    
}

private void show(Fragment f1) {
    if(fragment!=f1){
        fragmentTransaction.hide(fragment);
        fragment=f1;
        if(!f1.isAdded()){
            fragmentTransaction.add(R.id.ll2,fragment).commit();
        }else {
            fragmentTransaction.show(fragment).commit();
        }
    }


}