博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
笔记68 | 切换fragmengt的replace和add方法笔记
阅读量:5072 次
发布时间:2019-06-12

本文共 1075 字,大约阅读时间需要 3 分钟。

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;    }

运行情况

性能没什么区别~~~

转载于:https://www.cnblogs.com/xiangevan/p/10751651.html

你可能感兴趣的文章
计算机基础作业1
查看>>
Ubuntu 深度炼丹环境配置
查看>>
C#中集合ArrayList与Hashtable的使用
查看>>
从一个标准 url 里取出文件的扩展名
查看>>
map基本用法
查看>>
poj-1163 动态规划
查看>>
Golang之interface(多态,类型断言)
查看>>
Xshell5显示乱码问题
查看>>
8-1 python 接口开发(提供数据、返回session_id)
查看>>
swift 中单例的写法
查看>>
win10子系统ubuntu忘记密码解决方案
查看>>
如何判断两个链表相交
查看>>
ZenShot 流水账(一)
查看>>
怎样从Java转换到Kotlin代码:现在就开始使用Kotlin(KAD 29)
查看>>
Java 执行CMD/DOS
查看>>
oracle容器化docker解决方案
查看>>
基于SOA分布式架构的dubbo框架基础学习篇
查看>>
关于链表的一个小程序
查看>>
java多线程--线程池的使用
查看>>
EL简介
查看>>