关于app.FragmentManager和v4包的FragmentPagerAdapter冲突
这几天发现一个问题我用getFragmentManager()得到FragmentManager不能放到FragmentPagerAdapter里面去.由于FragmentPagerAdapter里面构造參数必须是v4包下的FragmentManager,而我activty里面getFragmentManager得到是app包下的FragmentManager 有次产生冲突
一般解决的方法就是不是继承activity而是继承fragmentactivity ..可我就是不想我就要actvity.由于fragmentactivity 是为了兼容3.0一下版本号我根本不要考虑3.0一下 ,安卓上半年碎片分析3.0一下仅仅占6%的份额,非常多app根本都不考虑2.3啥啥的 直接最低4.0 .
我是做一个ble的项目 因为ble是基于安卓4.3的,所以我的项目最低版本号就是4.3 项目用到viewpager时候与用到了FragmentPagerAdapter适配器,但是发现默认的FragmentPagerAdapter的构造參数必须用的v4包下的FragmentManager.而我既然基于4.3开发呀 我管理fragment界面直接用的是activity.也许会说为什么不用f呢,我们知道fragmentactivity是android-support-v4兼容包的 既然是兼容包是为了兼容3.0一下版本号我都到4.3了为什么还要考略兼容3.0一下呢
那问题总结下:
由于是最低版本号4.3所以我用到fragment时候不想用fragmentactivity 直接用actiity多方便定义基类也方便多了.
问题是fragment的FragmentPagerAdapter适配器默认须要传一个參数必须是v4包的FragmentManager,而我用的activity得到的FragmentManager是app包下的
这下凌乱.而发现app包下根本没有FragmentPagerAdapter..真是差点没骂谷歌脑残..
解决方法 直接去v4报下找到FragmentPagerAdapter源代码把他所有复制下来自己建立一个类,把里面所有导入FragmentManager的改成app包下的 这样就攻克了,
,最后还是不相信谷歌有这么脑残,最终找到在v13包下的FragmentPagerAdapter 这个类用到FragmentManager是app包下的FragmentManager,那就把v13包倒进来
就能够轻松使用actvity类来得到FragmentManager实现 ,
万一你认为用v13包仅仅用了这么一个类浪费 那就直接把v13包的FragmentPagerAdapter拉下来复制一份就省略了
如此备注..
关于app.FragmentManager和v4包的FragmentPagerAdapter冲突的更多相关文章
- Android做法说明(3)---Fragment使用app袋或v4包解析
Android做法说明(3)---Fragment使用app袋或v4包解析 1)问题简述 相信非常多的朋友在调用Fragment都会遇到以下的情况: watermark/2/text/aHR0cDov ...
- Fragment用app包还是v4包解析
转自:http://blog.csdn.net/zc0908/article/details/50721553 1)问题简述 相信很多的朋友在调用Fragment都会遇到下面的情况: 这个时候问题来了 ...
- android.app.FragmentManager 与 android.support.v4.app.FragmentManager带来的若干Error
Fragment是activity的界面中的一部分或一种行为.你能够把多个Fragment们组合到一个activity中来创建一个多面界面而且你能够在多个activity中重用一个Fragment.你 ...
- Android v4 包和v7包问题
昨天新建了一个android项目,加入了一个bootstrap的外部依赖和一个底部导航栏的外部依赖.结果jj 了,老是提醒我v4包v7包冲突: 事实是这样的,首先我的底部导航依赖库里面有一个v4包,那 ...
- app包中的fragment和v4包中的fragment的使用的区别
app包中的fragment和v4包中的fragment的使用的区别 1.尽量不要用app包中的fragment,因为这个是在3.0之后才有的,支持的版本太高,在低版本中是是用不了的 2.androi ...
- easypermissions拒绝权限后闪退。 java.lang.NoSuchMethodError: No virtual method isStateSaved()Z in class Landroid/support/v4/app/FragmentManager
Process: com.tazan.cd.streetlight, PID: 18825 java.lang.NoSuchMethodError: No virtual method isState ...
- 14 Fragment的V4包的使用
activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android ...
- 关于v4包的Fragment过渡动画的事件监听无响应问题解决
项目中部分功能模块采用了单Activity+多Fragment模式,当Fragment切换时,需要在过渡动画执行完后做一些操作,通常就是在自己封装的FragmentBase中重写onCreateAni ...
- ContextMenu控件引用以及不用v4包的方法
最近想撸个APP出来玩玩,本想用Yalantis出的SideMenu,结果因为依赖问题放弃了,改用他们家的ContextMenu. 如果你用了v4包 那么问题就比较简单了,直接打开项目中app中的bu ...
随机推荐
- m_Orchestrate learning system---二十五、复制类的时候最容易出现的错误是什么
m_Orchestrate learning system---二十五.复制类的时候最容易出现的错误是什么 一.总结 一句话总结:命名空间错误导致Analyze类虽然继承了Base类,但是没有执行里面 ...
- 25.不改变原生数据的STL algorithm
通过仿函数for_each操作 vector<,,,, }; list<double> db{ 1.1,2.2,3.3,4.4,5.5 }; //循环算法,算法的泛型 print p ...
- Python Schema使用说明
转自https://segmentfault.com/a/1190000011777230 Python Schema使用说明 Schema是什么? 不管我们做什么应用,只要和用户输入打交道,就有一个 ...
- jsp登录页面 雏形
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Glide加载圆形图片第一次只显示默认图片
Glide加载圆形图,又设置了默认图,很多时候第一次加载的时候只显示默认图.下面的方案可以解决.\ Glide.with(AudioDetailActivity.this) .load(cover) ...
- vue项目的环境变量
关于项目中环境变量的总结 背景 项目环境一般分为开发环境,测试环境,线上环境 因为每个环境的接口域名.webpack 配置都是不同的,所以在打包构建时,我们需要区分这些环境,这时就用到了环境变量 在工 ...
- 关于thinkphp 命令行
很多人做多年开发只懂得PHP能在浏览器下运行或者只能结合APACHE等WEB服务器运行,却不晓得,PHP也能用命令行执行,或许是由于大多人在WINDOWS平台做开发部署运行,比较少接触LINUX. T ...
- POJ-2785 Values whose Sum is 0 Hash表
题目链接:https://cn.vjudge.net/problem/POJ-2785 题意 给出四组数,每组有n个数 现从每组数中取一个数作为a,b,c,d 问有几组这样的a+b+c+d=0 思路 ...
- 一:1.1 python程序与数据储存【进制转换】
二进制 :0 1 [逢二进一]0+0=00+1=11+1=1011+1=100 1 1+ 1------ 100 八进制: 0 1 2 3 4 5 6 7 [逢八进一] 1+7=101+2=3 十进制 ...
- STM时钟
一.在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL. ①HSI是高速内部时钟,RC振荡器,频率为8MHz. ②HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率 ...