getSupportFragmentManager()方法不可用解决办法和原因

来源:互联网 发布:mysql.host不存在 编辑:程序博客网 时间:2024/06/10 18:22

getSupportFragmentManager()方法不可用解决办法和原因


在Android开发中,少不了Fragment的运用。目前在实际运用中,有v-4包下支持的Fragment以及app包下的Fragment,这两个包下的FragmentManager获取方式有点区别,所以大家在运用的过程中,一定要注意自己的导的包。

app包下FragmentManager用

Fragmentmanager  fragmentManager=getFragmentManager();


v-4包的FragmentManager用

FragmentManager   fragmentManager=getSupportFragmentManager()   获取


但是getSupportFragmentManager()  有其运用范围,只能在部分activity中运用,不能再activity中运用。当遇到getSupportFragmentManager()  没定义的问题时,修改下activity为

FragmentActivity或者AppCompatActivity。


AppCompatActivity和Activity的区别

首先是AppCompatActivity默认带标题

但Activity不带

而且AppCompatActivity和 
requestWindowFeature(Window.FEATURE_NO_TITLE); 
有冲突

当活动继承AppCompatActivity时再设置取消标题则程序会直接挂掉 

FragmentActivity和Activity的区别

Fragment是Android 3.0以后的东西,为了在低版本中使用Fragment就要用到android-support-v4.jar兼容包,而FragmentActivity就是这个兼容包里面的,它提供了操作Fragment的一些方法,其功能跟3.0及以后的版本的Activity的功能一样。
下面是API中的原话:

FragmentActivity is a special activity provided in the Support Library to handle fragments on system versions older than API level 11. If the lowest system version you support is API level 11 or higher, then you can use a regular Activity.

主要区别如下:
1、FragmentActivity 继承自Activity,用来解决Android 3.0之前无法使用Fragment的问题,所以在使用的时候需要导入android-support-v4.jar兼容包,同时继承 FragmentActivity,这样在Activity中就能嵌入Fragment来实现你想要的布局效果。 
2、当然Android 3.0之后你就可以直接继承自Activity,并且在其中嵌入使用Fragment。 
3、获得FragmentManager的方式也不同 
Android 3.0以下:getSupportFragmentManager() 
Android 3.0以上:getFragmentManager()

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 尾椎骨疼痛的原因 尾椎骨在哪 尾椎骨上面一点疼是怎么回事 尾椎骨骨折症状 小孩尾椎骨疼是怎么回事 尾椎骨突然疼是怎么回事 尾椎骨骨裂怎么办 孕妇尾椎骨疼怎么办 尾椎骨骨裂症状 尾椎骨骨折后遗症 怀孕尾椎骨疼 尾椎酸痛是怎么回事 屁股尾椎疼 尾椎骨骨折怎么办 孕中期尾椎骨疼 尾椎骨旁边疼是怎么回事 尾椎摔伤了怎么办 久坐尾椎骨疼 尾椎骨酸痛怎么办 尾椎骨骨折睡觉姿势 尾椎骨上面疼 摔到尾椎骨 屁股尾椎骨痛 尾椎骨疼看什么科 尾椎骨涨疼是怎么回事 尾椎骨疼什么原因 怀孕后尾椎骨疼怎么回事 尾椎有几节 尾椎骨位置 尾椎骨有点疼 男尾椎骨疼是怎么回事 尾椎骨疼痛看什么科 尾椎骨是什么 尾椎骨弯了 椎形 椎椎 尾款什么意思 尾款 补尾款什么意思 补尾款