我正在编写一个使用FragmentPagerAdapter的应用程序。 适配器中的片段需要根据外部数据进行更新-但这不会发生。 我注意到片段类在getItem函数中仅实例化一次:

@Override

public Fragment getItem(int position) {

TabInfo info = mTabs.get(position);

return Fragment.instantiate(mContext, info.clss.getName(),

info.args);

}

即使我删除该类并使用一个新的类,也无济于事-该方法仅在标签页第一次填充时调用一次,然后再也不会调用。 有人知道为什么吗?

谢谢!

只要适配器需要一个片段并且该片段不存在,就会调用getItem。

如果FragmentManager中已经存在该片段,则无需实例化它,也不需要调用getItem。

要更新现有片段,您需要从FragmentManager或适配器中检索它,并进行相应的操作。

默认情况下,viewpager将为可见页面及其旁边的页面创建片段。 即从位置1和2处的片段开始。当您滑动到第2页时,将在位置3处创建片段,依此类推

有可能破坏碎片吗?

stackoverflow.com/questions/10396321/

stackoverflow.com/questions/15212309/

@ n00bprogrammer能否请您告诉我如何解决此问题,因为我也遇到同样的问题。

+1表示有关ViewPager为可见页面及其附近创建片段的信息。我想知道为什么当只有选项卡0可见时,为什么我仍然在选项卡1中看到东西。

在公共片段中getItem(int position)是基于位置0的吗? @库夫斯

我认为是这样,但有一阵子没看,所以可能是错误的

"如果片段管理器中已经存在片段",将如何确定?即。它怎么确切知道它在寻找什么?

从文档"ViewPager associates each page with a key Object instead of working with Views directly. This key is used to track and uniquely identify a given page independent of its position in the adapter." developer.android.com/reference/android/support/v4/view/

要比上面的答案更具体(这是正确的!),由FragmentPagerAdapter的InstantiateItem(ViewGroup container,int position)方法调用getItem。 以防万一有帮助:)

简单使用FragmentStatePagerAdapter代替FragmentPagerAdapter

我知道这很老了,但无论如何都会生病。片段分页器适配器保留内存中的片段,如果只有几个选项卡,则使用该片段。片段状态寻呼机适配器将在每次轻扫时销毁片段实例以保存在内存中

android getitem,关于android:FragmentPagerAdapter的getItem何时调用?相关推荐

  1. android textview adapter,Android在FragmentPagerAdapter中的Fragment中设置TextView文本

    这个让我疯了.基本上,我想创建一个ViewPager并为其添加一些片段.然后,我想做的就是在Fragment的TextViews中设置一个值.我可以添加Fragments,并且它们会附加,但是当我在第 ...

  2. android滑动fragment,android中ViewPager结合Fragment进行无限滑动

    实现ViewPager结合Fragment实现无限循环切换,这里也是在适配器里面进行的,当然使用滑动监听也能够实现 import android.support.v4.app.Fragment; im ...

  3. android壁纸框架,Android仿百度壁纸客户端之搭建主框架(一)

    这是个不错的教程,自己学完了之后就拿出来分享了,本来想一个帖子写完,但是发现这样对自己写博客的效率有点出入,为了让大家看的舒服点,所以分开来写,我们先开看下百度壁纸的客户端是什么样子的 我们先来写个主 ...

  4. Android横向伸缩,Android 实现伸缩布局效果示例代码

    最近项目实现下面的图示的效果,本来想用listview+gridview实现,但是貌似挺麻烦的于是就用flowlayout 来addview实现添加伸缩的效果,实现也比较简单. mainActivit ...

  5. android 分组 listview,Android实现的ListView分组布局改进示例

    本文实例讲述了android实现的listview分组布局改进方法.分享给大家供大家参考,具体如下: 由于是在网上转载的一篇文章,在这里就不多说废话了,首先看一下最终的效果图: 然后是实现该listv ...

  6. android 自定义命名空间,Android自定义ActionBar实例

    本文实例讲述了android自定义actionbar的实现方法.分享给大家供大家参考.具体实现方法如下: android 3.0及以上已经有了actionbar的api,可以通过引入support p ...

  7. xamarin.android 控件,Android 库控件 - Xamarin | Microsoft Docs

    Xamarin Android 库控件Xamarin.Android Gallery control 03/15/2018 本文内容 Gallery是一种布局小组件,用于显示水平滚动列表中的项,并将当 ...

  8. android 自定义flowlayout,Android 自定义ViewGroup之实现FlowLayout-标签流容器

    本篇文章讲的是Android 自定义ViewGroup之实现标签流式布局-FlowLayout,开发中我们会经常需要实现类似于热门标签等自动换行的流式布局的功能,网上也有很多这样的FlowLayout ...

  9. android listview asynctask,Android精通之AsyncTask与ListView讲解

    版权声明:未经博主允许不得转载 标题图 AsyncTask 了解AsyncTask异步,需要了解一下异步任务(多线程),什么是线程,可以这么说线程好比边吃饭边看电视,AsyncTask是为了方便后台线 ...

最新文章

  1. 疫情之下,村干部们的智慧越来越...
  2. 对话文津|相约“信息”的前世今生
  3. jQuery学习3:操作元素属性和特性
  4. 全国计算机一级考试理论部分,计算机一级考试理论试题:第七部分 单选
  5. VS 中配置使用Visual SVN系列 四:SVN Server配置和使用
  6. VTK:PolyData之SurfaceContourLineInterpolator
  7. MySQL IFNULL()函数用法MySQL
  8. MFC 缩放和显示IplImage
  9. [C语言程序设计_现代方法(第2版)] 第二章 C语言基本概念
  10. C语言case字句有什么作用,switch case 语句的使用规则
  11. 01-浏览器同源政策 以及 什么是跨域?怎么解决跨域问题?
  12. iPhone开发内存管理
  13. delphi 发送html邮件,delphi 发邮件 Delphi发送邮件的源码
  14. 差速移动机器人轨迹跟踪控制方法及实现-NJUST
  15. 物联网安全行业调研报告 - 市场现状分析与发展前景预测
  16. 小程序服务器装rsshub,RssHub 部署
  17. 网络-DNS域名系统详解与DNS攻击
  18. E罗斯宝藏网站,收藏起来一定用的到!
  19. RAR压缩包,去除密码?
  20. excel下拉表格复制公式不自动递增

热门文章

  1. 微信php开发用户分组,asp.net微信开发用户分组管理的示例代码
  2. Android向系统日历中添加日程事件
  3. 小米 安卓等 安卓 机器 开启9008端口进入深刷模式 深刷模式 9008工程线深度线制作教程
  4. 【CVPR2018】PSMNet:一个基于金字塔的端到端立体匹配网络
  5. Android封闭系统,最封闭的Android系统—魅族Flyme
  6. 操作系统:操作系统发展历史与现状
  7. Python开发技巧-教你制作Python进度条
  8. “京东云合伙人”围堵京东:本想年入百万,结果被割了韭菜
  9. Android开发-基于百度地图API开发仿滴滴出行APP界面的实现
  10. 基础知识 - 字符、字节区别