fragment
来源:互联网 发布:职业规划测评软件 编辑:程序博客网 时间:2024/06/04 01:22
一:你可以把Fragment当成Activity的一个界面的一个组成部分,甚至Activity的界面可以完全有不同的Fragment组成,更帅气的是Fragment拥有自己的生命周期和接收、处理用户的事件,这样就不必在Activity写一堆控件的事件处理的代码了。更为重要的是,你可以动态的添加、替换和移除某个Fragment。
二:
如果你喜欢使用Fragment,一定要清楚这些方法,哪个会销毁视图,哪个会销毁实例,哪个仅仅只是隐藏,这样才能更好的使用它们。
a、比如:我在FragmentA中的EditText填了一些数据,当切换到FragmentB时,如果希望会到A还能看到数据,则适合你的就是hide和show;也就是说,希望保留用户操作的面板,你可以使用hide和show,当然了不要使劲在那new实例,进行下非null判断。
b、再比如:我不希望保留用户操作,你可以使用remove(),然后add();或者使用replace()这个和remove,add是相同的效果。
c、remove和detach有一点细微的区别,在不考虑回退栈的情况下,remove会销毁整个Fragment实例,而detach则只是销毁其视图结构,实例并不会被销毁。那么二者怎么取舍使用呢?如果你的当前Activity一直存在,那么在不希望保留用户操作的时候,你可以优先使用detach。
0 0
- Fragment
- Fragment
- fragment
- Fragment
- Fragment
- Fragment
- Fragment
- fragment
- fragment
- Fragment
- Fragment
- fragment
- Fragment
- Fragment
- Fragment
- Fragment
- Fragment
- fragment
- 项目开发流程
- js-AMD-CMD-依赖区别
- [LeetCode]Kth Largest Element in an Array
- Activity生命周期的保存,其中onSaveInstanceState和onRestoreInstanceState触发的时机
- dired显示文件大小时使用"human readable"的格式显示
- fragment
- Objective-C 【@property 的参数问题】
- 大家好
- 极客学院课程Linux下 C 编程——线程操作
- Gradle--第一章 引言
- POJ1195 Mobile phones(树状数组)
- jQuery 常用方法总结
- 一定要长记性
- 【翻译自mos文章】访问Oracle Database的知名的Data Providers for .NET