问题:
如图所示,导入android.support.v4.app.Fragment包情况下,getSupportFragmentManager()不可用。

解决:
getSupportFragmentManager() 有运用范围,只能在部分activity中运用,不能再activity中运用。当遇到getSupportFragmentManager() 没定义的问题时,修改下activity为FragmentActivity或者AppCompatActivity。

错误原因:
直接继承了Activity

知识补充:
在Android开发中,少不了Fragment的运用。
目前在实际运用中,有v-4包下支持的Fragment以及app包下的Fragment,这两个包下的FragmentManager获取方式有点区别,所以在运用的过程中需要注意自己的导的包。
app包下FragmentManager用
Fragmentmanager fragmentManager=getFragmentManager();
v-4包的FragmentManager用
FragmentManager fragmentManager=getSupportFragmentManager() 获取
android.app.Fragment与android.support.v4.app.Fragment区别:
- 最低支持版本不同
android.app.Fragment 兼容的最低版本是android:minSdkVersion="11" 即3.0版。
android.support.v4.app.Fragment 兼容的最低版本是android:minSdkVersion="4" 即1.6版。
- 需要导jar包
fragment android.support.v4.app.Fragment 需要引入包android-support-v4.jar
- 获取manager的方法不同
android.app.Fragment使用getFragmentManager()
android.support.v4.app.Fragment使用getSupportFragmentManager()
网友评论