解读FragmentPagerAdapter和FragmentStatePagerAdapter

       最近项目开发当中 经常使用ViewPager结合fragment构建页面框架  遇到FragmentPagerAdapter和FragmentStatePagerAdapter,到底在哪种情况下使用哪一个呢?

      前者适用于页面较少的情况,后者适用于页面较多的情况

 

查看FragmentPagerAdapter中 destroyItem方法源码:

public void destroyItem(ViewGroup container, int position, Object object) {
    if (this.mCurTransaction == null) {
        this.mCurTransaction = this.mFragmentManager.beginTransaction();
    }

    this.mCurTransaction.detach((Fragment)object);
}

FragmentStatePagerAdapter中 destroyItem()方法源码

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
    Fragment fragment = (Fragment)object;

    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
    }
    if (DEBUG) Log.v(TAG, "Removing item #" + position + ": f=" + object
            + " v=" + ((Fragment)object).getView());
    while (mSavedState.size() <= position) {
        mSavedState.add(null);
    }
    mSavedState.set(position, mFragmentManager.saveFragmentInstanceState(fragment));
    mFragments.set(position, null);

    mCurTransaction.remove(fragment);
}

通过源码了解,主要查看destroyItem方法中的最后一行,mcurtransaction.remove(fragment),通过这行代码了解到,FragmentStatePagerAdapter是真正释放fragment内存,在FragmentPagerAdapter的destroyItem方法中所调用的是mcurtransaction.detach(fragment),他仅仅是将fragment的页面与activity的页面抽离开来,并没有真正的销毁fragment释放内存.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
go富集分析和kegg富集分析是生物信息学中常用的两种功能注释方法,用于解释大规模基因表达数据中的生物学意义和功能。这些分析通常用于分析基因列表中富集的功能类别或代谢通路。 在go富集分析中,通常使用Gene Ontology(GO)数据库来标注基因的功能、细胞组分和生物过程。分析过程包括将基因列表与注释数据库中的功能类别进行比较,并计算富集程度。富集程度由P值来衡量,P值越小表示富集程度越高,代表该功能类别在基因列表中出现的概率较小。 解读go富集分析结果时,需要关注具有显著富集的功能类别,这些功能类别指示了基因列表中的生物学过程和功能。此外,还需要考虑功能类别的层级关系,例如,富集于更高级别的功能类别可能表示更广泛的生物学过程。结合基因列表的背景信息和研究问题的特点,进一步挖掘和解释功能类别的生物学意义。 对于kegg富集分析,是基于KEGG(Kyoto Encyclopedia of Genes and Genomes)数据库中的代谢通路信息进行注释和富集分析。富集程度也是通过计算P值来量化,P值越小表示富集程度越高,代表该代谢通路在基因列表中出现的概率较小。 解读kegg富集分析结果时,可关注具有显著富集的代谢通路,这些通路是基因列表中可能参与的生物化学反应网络。进一步分析这些富集的代谢通路可以帮助理解基因表达数据中的代谢变化和生物过程的调控机制。 综上所述,go和kegg富集分析结果的解读需要结合P值和功能/通路的生物学意义,通过综合分析得出准确的结论。这两种方法在生物信息学研究中具有重要的应用价值,可以帮助揭示基因表达数据中的生物学过程、功能和代谢调控机制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值