安卓fragment的replace后还能看见原来fragment上的内容。。
我有replace(R.id.fragment,newFragment)后,虽然多了newfragment的内容,但原来的fragment的内容还在,于是我用remove...
我有replace(R.id.fragment,newFragment)后,虽然多了newfragment的内容,但原来的fragment的内容还在,于是我用remove,发现没有效果。。为什么?
展开
3个回答
展开全部
/**
* 跳转页面
*
* @param from
* @param to
*/
public void switchContent(Fragment from, Fragment to) {
if (from != to) {
mContent = to;
FragmentTransaction transaction = getSupportFragmentManager()
.beginTransaction();
//to.getLoaderManager().hasRunningLoaders();
// 先判断是否被add过
if (!to.isAdded()) {
// 隐藏当前的fragment,add下一个到Activity中
transaction.hide(from).add(R.id.content_view, to).commit();
} else {
// 隐藏当前的fragment,显示下一个
transaction.hide(from).show(to).commit();
}
}
}
这个是我项目用到的,你可以参考下,其中from是当前页面,To是你要切换到的页面。
* 跳转页面
*
* @param from
* @param to
*/
public void switchContent(Fragment from, Fragment to) {
if (from != to) {
mContent = to;
FragmentTransaction transaction = getSupportFragmentManager()
.beginTransaction();
//to.getLoaderManager().hasRunningLoaders();
// 先判断是否被add过
if (!to.isAdded()) {
// 隐藏当前的fragment,add下一个到Activity中
transaction.hide(from).add(R.id.content_view, to).commit();
} else {
// 隐藏当前的fragment,显示下一个
transaction.hide(from).show(to).commit();
}
}
}
这个是我项目用到的,你可以参考下,其中from是当前页面,To是你要切换到的页面。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询