如何让一个fragment重新加载界面
展开全部
/**
* 设置默认的fragment,即//第一次加载界面;
*/
private void setDefaultFragment(Fragment fm) {
mFm = getFragmentManager();
FragmentTransaction mFragmentTrans = mFm.beginTransaction();
mFragmentTrans.add(R.id.id_addfram, fm).commit();
mContent = fm;
}
private FragmentManager mFm;
private Fragment mContent;
/**
* 修改显示的内容 不会重新加载 *
*/
public void switchContent(Fragment to) {
if (mContent != to) {
FragmentTransaction transaction = mFm.beginTransaction();
if (!to.isAdded()) { // 先判断是否被add过
transaction.hide(mContent).add(R.id.id_addfram, to).commit(); // 隐藏当前的fragment,add下一个到Activity中
} else {
transaction.hide(mContent).show(to).commit(); // 隐藏当前的fragment,显示下一个
}
mContent = to;
}
}
/**
* 修改显示的内容 但会重新加载 *
*/
public void switchContent2(Fragment to){
FragmentTransaction transaction = mFm.beginTransaction();
transaction.replace(R.id.id_addfram,to);
//transaction.addToBackStack(null);
transaction.commit();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询