创建Fragment

要创建fragment,必须从Fragment或Fragment的派生类派生出一个类。Fragment的代码写起来有些像activity。它具有跟activity一样的回调方法,比如 onCreate(),onStart(),onPause()和onStop()。实际上,如果你想把老的程序改为使用fragment,基本上只需要把activity的回调方法的代码移到fragment中对应的方法即可。

通常需要实现以上生命周期函数:

onCreate():

当创建fragment时系统调用此方法。在其中你必须初始化fragment的基础组件们。可参考activity的说明。

onCreateView():

系统在fragment要画自己的界面时调用(在真正显示之前)此方法。这个方法必须返回frament的layout的根控件。如果这个fragment不提供界面,那它应返回null。

onPause():

不废话了,跟activity一样。

大多数程序应最少对fragment实现这三个方法。当然还有其它几个回调方法可应该按情况实现之。所有的生命周期回调函数在“操控fragment的生命周期”一节中有详细讨论。

下图为fragment的生命周期(它所在的activity处于运行状态)。已经画得很明白了,不用再解释了吧?


还有几个现成的fragemtn的派生类,你可能需要从它们派生,如下所列:

DialogFragment

显示一个浮动的对话框。使用这个类创建对话框是替代activity创建对话框的最佳选择.因为你可以把fragmentdialog放入到activity的返回栈中,使用户能再返回到这个对话框。

ListFragment

显示一个列表控件,就像ListActivity类,它提供了很多管理列表的方法,比如onListItemClick()方法响应click事件。

PreferenceFragment

显示一个由Preference对象组成的列表,与PreferenceActivity相同。它用于为程序创建“设置”activity。

原文来自:http://blog.csdn.net/niu_gao/article/details/7169323

最新文章

  1. Neutron 理解 (6): Neutron 是怎么实现虚拟三层网络的 [How Neutron implements virtual L3 network]
  2. TCP的粘包现象
  3. CSS position relative absolute fixed
  4. TokuDB 引擎安装测试
  5. iOS使用代码截图
  6. 通过EL表达式,后台数据传到前台,引号及后面的数据被截断的问题:
  7. C#转义字符总结
  8. J2EE学习记录,EJB,JNDI,RMI
  9. bmob云 实现注册和登录的功能
  10. Object.prototype.toString & typeof
  11. pyqt4实现tab界面切换
  12. 在ASP.NET MVC 中获取当前URL、controller、action 、参数
  13. js中编码问题escape、encodeURI
  14. JavaWeb学习总结(一)——JavaWeb开发入门(转)
  15. ef err
  16. 转载:IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数
  17. 《深入理解Java虚拟机》(三)垃圾收集器与内存分配策略
  18. 201621123049《java程序设计》第四周学习总结
  19. python爬虫之反爬虫(随机user-agent,获取代理ip,检测代理ip可用性)
  20. HTML5 自定义属性

热门文章

  1. The difference between macro and function I/Ofunction comparision(from c and pointer )
  2. HTML中,按钮button与submit区别是什么?
  3. JS常用的设计模式(7)—— 外观模式
  4. su:认证失败
  5. 乐够GO应用源码完整版
  6. Javascript 补位运算符
  7. 测试一个C段网络的联通性
  8. js 触发select onchange事件
  9. DOS下无法调出中文输入法-Solved
  10. ajax使用。