[Android疑难杂症]动态替换Fragment全屏的问题
前言
动态替换Fragment时遇到的一个变态问题,记录一下。
声明
欢迎转载,但请保留文章原始出处:)
博客园:http://www.cnblogs.com
农民伯伯: http://over140.cnblogs.com
正文
先看代码:
private void addFragmentToStack(Fragment fragment) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(android.R.id.content, fragment);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);//设置动画效果
ft.commit();
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(android.R.id.content, fragment);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);//设置动画效果
ft.commit();
}
运行后你会发现fragment全屏了(layout中有同样指定)!甚至去掉当前ContentView中的FrameLayout都可以!
原因:
不能指定containerViewId为android.R.id.content,随便还换一个R.id.fragment_container就可以了。
结束
还是老办法,一行行注释掉代码,下载别人可以运行的代码,真是没想到,仍然花了许多时间。没有深究,也许有其他用途。