android FragmentPagerAdapter 无法刷新数据的解决方法
2016-07-25 14:47
671 查看
class FrgAdapter extends FragmentPagerAdapter { FragmentManager fm; public FrgAdapter(FragmentManager fm) { super(fm); this.fm = fm; } /** * 返回的Fragment相当于ViewPager中的一个item */ @Override public Fragment getItem(int pos) { return fragmentList.get(pos); } @Override public int getCount() { return fragmentList.size(); } @Override public int getItemPosition(Object object) { return POSITION_NONE; } @Override public void notifyDataSetChanged() { super.notifyDataSetChanged(); } //核心方法 @Override public Object instantiateItem(ViewGroup container, int position) { if (flag_updateFm) {//根据需求添加更新标示,UI更新完成后改回false,看不懂的回家种田 //得到缓存的fragment Fragment fragment = (Fragment) super.instantiateItem(container, position); //得到tag,这点很重要 String fragmentTag = fragment.getTag(); //这里的tag是系统自己生产的,我们直接取就可以 //如果这个fragment需要更新 FragmentTransaction ft = fm.beginTransaction(); //移除旧的fragment ft.remove(fragment); //换成新的fragment fragment = fragmentList.get(position); //添加新fragment时必须用前面获得的tag,这点很重要 ft.add(container.getId(), fragment, fragmentTag); ft.attach(fragment); ft.commit(); return fragment; } else { return super.instantiateItem(container, position); } } }
相关文章推荐
- android studio togglebutton
- android imageview 图片不能正常显示 或不能自适应的解决方法
- Android中MediaRecorder类实现视频的录制
- 转来学习ActionBar
- Android 保存Fragment状态,避免重复加载
- android studio快捷键
- Android开发常用的第三方框架
- Android-原生系统分享小记
- 安卓开发参考资料
- Android Studio导入Project、Module的正确方法
- 安卓逆向学习第一天
- Android表情的处理方案记录
- Android Settings(Preferences)开发
- Android应用学习记录------通讯录的增,删,改,查
- Android原型设计工具探索
- Android Retrofit + RxAndroid
- Android组件化和插件化开发
- Android广播之发送广播的源码分析
- android MVP模式介绍与实战
- Android 仿QQ分组管理可拖动Item的ListView(附源码)