在activity中应该使用
getSupportFragmentManager()
如果使用
getFragmentManager()
,在跳转自定义Fragment是会编译报错。
wrong 2nd argument type....
而在自定义的Fragment中使用getFragmentManager()则没问题。
通过查看源码可知,Acrivity中getFragmentManager( )用的是
package android.app;
包下的代码,而Fragment是
package android.support.v4.app;
下的。这就好比有两大家族各族内的人员不能重名,
package android.app
下有一个小明,而V4下也有个小明。
那么自定义的Fragment是V4下的小明,如果在activity中用getFragmentManager( )强行给了android.app,那android.app坑定不会认同的。
如果使用
getSupportFragmentManager()
就没问题了,因为他是V4下的,所以可用把这个小明送回V4。