您的位置:首页 > 移动开发 > Android开发

Fragment的切换方法

2016-05-10 16:01 423 查看

Android开发中Fragment的切换有两方法

1、使用replace

public void replaceFragment(Fragment fragment) {
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction transaction = fm.beginTransaction();
transaction.replace(R.id.fragment_content, fragment);
transaction.commit();
}


使用该方法需要注意的是每一次切换Fragment的生命周期都会被调用一次

2、使用add-show-hide

public void showFragment(int index) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
hideFragment(ft);
switch (index) {
case 0: {
if(mHomeFragment == null) {
mHomeFragment = new HomeFragment();
ft.add(R.id.fragment_content,mHomeFragment);
}else {
ft.show(mHomeFragment);
}
break;
}
case 1: {
if(mTaskFragment == null) {
mTaskFragment = new TaskFragment();
ft.add(R.id.fragment_content,mTaskFragment);
}else {
ft.show(mTaskFragment);
}
break;
}
default:
break;
}
ft.commit();
}

public void hideFragment(FragmentTransaction ft){
//如果不为空,就先隐藏起来
if (mHomeFragment!=null){
ft.hide(mHomeFragment);
}
if(mTaskFragment!=null) {
ft.hide(mTaskFragment);
}
}


常用的方法

fragment.isAdded 判断是否被添加过
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android Fragment