FragmentTransaction几个函数的比较
来源:互联网 发布:ip和端口查询 编辑:程序博客网 时间:2024/05/17 03:31
FragmentTransactiontransaction = fm.benginTransatcion();//开启一个事务
transaction.add()
往Activity中添加一个Fragment
transaction.remove()
从Activity中移除一个Fragment,如果被移除的Fragment没有添加到回退栈(回退栈后面会详细说),这个Fragment实例将会被销毁。
transaction.replace()
使用另一个Fragment替换当前的,实际上就是remove()然后add()的合体~
transaction.hide()
隐藏当前的Fragment,仅仅是设为不可见,并不会销毁
transaction.show()
显示之前隐藏的Fragment
detach()
将此Fragment从Activity中分离,会销毁其布局,但不会销毁该实例
attach()
将从Activity中分离的Fragment,重新关联到该Activity,重新创建其视图层次
transatcion.commit()//提交一个事务
如果你在FragmentA中的EditText填了一些数据,当切换到FragmentB时,如果希望会到A还能看到数据,则适合你的就是hide和show;也就是说,希望保留用户操作的面板,你可以使用hide和show,因为这样用户之前的操作仍然存在。
如果你希望用户的操作不存在了,那你可以使用remove(),然后add();或者使用replace(),replace这个和remove,add是相同的效果。
ps : remove和detach有一点细微的区别,在不考虑回退栈的情况下,remove会销毁整个Fragment实例,而detach则只是销毁其视图结构,实例并不会被销毁。那么二者怎么取舍使用呢?如果你的当前Activity一直存在,那么在不希望保留用户操作的时候,你可以优先使用detach。
- FragmentTransaction几个函数的比较
- FragmentActivity、FragmentManager、FragmentTransaction几个的关系
- 几个比较实用的函数
- 几个绘图函数的比较
- 几个输入输出函数的比较
- 几个比较的实用的函数
- HexToInt的几个函数速度比较
- C的几个函数安全性比较
- MFC几个比较重要的全局函数
- JavaScript 数组几个比较有用的函数
- php 几个比较实用的函数
- JQuery 中比较有趣的几个函数
- php几个比较实用的函数示例
- php 几个比较实用的函数
- C语言的输入输出-几个函数的使用比较
- 几个字符串输入函数比较
- 几个比较好用的asp检查函数
- 几个比较好用的asp检查函数
- IIS配置—端口映射—外网访问网站
- java开源项目CrapApi接口管理系统
- 枚举 类型转换
- AlphaGo 真的如此重要么?
- hihoCoder题库1039字符消除
- FragmentTransaction几个函数的比较
- hdu5656 dp
- Android设计模式应用-装饰器模式
- php笔记之表单验证
- HDU-4968 Improving the GPA (DP)
- Java并发机制之Volatile关键字
- SSH框架整合demo
- BestCoder Round #78 1002/hdu 5656 CA Loves GCD 动态规划
- visual studio 2008 安装service pack 1的神BUG