笔记68 | 切换fragmengt的replace和add方法笔记

replace

private  void  LoandFragment(Fragment fragment){
        FragmentManager fm = getSupportFragmentManager();
        FragmentTransaction ft = fm.beginTransaction();
        ft.replace(R.id.fragment, fragment);
        ft.commitAllowingStateLoss();
    }

add

private Fragment currentFragment = new Fragment();
    //Fragment优化
    private FragmentTransaction transaction(Fragment targetFragment) {

        FragmentTransaction transaction = getSupportFragmentManager()
                .beginTransaction();
        if (!targetFragment.isAdded()) {
            //第一次使用switchFragment()时currentFragment为null,所以要判断一下
            if (currentFragment != null) {
                transaction.hide(currentFragment);
            }
            transaction.add(R.id.fragment, targetFragment, targetFragment.getClass().getName());

        } else {
            transaction
                    .hide(currentFragment)
                    .show(targetFragment);
        }
        currentFragment = targetFragment;
        return transaction;
    }

性能没什么区别~~~

原文链接跳转GitHub

原文发布于微信公众号 - 项勇(xiangy_life)

原文发表时间:2018-04-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏林冠宏的技术文章

android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测

目录:   1,过程感慨;   2,运行环境;   3,准备工作;   4,编译 .so   5,遇到的关键问题及其解决方法   6,实现效果截图。 (原创:转...

1.3K5
来自专栏Android知识点总结

Android原生下载(下篇)多文件下载+多线程下载

3624
来自专栏分享达人秀

Fragment添加、删除、替换

前面一起学习了Fragment的创建和加载,以及其生命周期方法,那么接下来进一步来学习Fragment的具体使用,本期先来学习Fragment添加、删除...

1.5K8
来自专栏分享达人秀

揭开RecyclerView庐山真面目

大家还记得之前在第38期~第50期都在学习列表控件吗,其中用了8期讲ListView的使用,相信都已经掌握好了吧。那么来学习在Android 5.X新...

2958
来自专栏分享达人秀

Fragment回退栈及弹出方法

在上一期分享的文章末尾留了一个课后作业,有去思考如何解决吗?如果已经会了那么恭喜你,如果还不会也没关系,本期一起来学习。 一、回退栈 在前面两...

3096
来自专栏非著名程序员

Android新组件RecyclerView介绍,其效率更好

RecyclerView介绍 非著名程序员 ? 今天我们首先来说为什么要介绍这个新组件RecyclerView,因为前几天我发布了一个常用面试题ListVie...

2099
来自专栏非著名程序员

超炫的FlowingDrawer效果

1、FlowingDrawer 效果 ---- ? 2、FlowingDrawer说明 ---- FlowingDrawer是一个拖拽效果控件。 温馨提示:Fl...

2565
来自专栏Android先生

Fragment全解析系列(二):正确的使用姿势

Fragment是可以让你的app纵享丝滑的设计,如果你的app想在现在基础上性能大幅度提高,并且占用内存降低,同样的界面Activity占用内存比Fragme...

1593
来自专栏everhad

札记:Fragment基础

Fragment概述 在Fragment出现之前,Activity是app中界面的基本组成单位,值得一提的是,作为四大组件之一,它是需要“注册”的。组件的特性使...

2236
来自专栏极客猴

你还在使用Dialog?赶紧把DialogFragment用起来

DialogFragment是在Android 3.0的时候被引入的, 目的是dialog也变成了碎片。DialogFragment是Fragment的子类,用...

1143

扫码关注云+社区

领取腾讯云代金券