在Honeycomb之前的Android版本中,典型的Android应用程序实现把与用户界面小组件进行交互的代码放在Activity的子类中。当谷歌的合作伙伴推出了采用Android操作系统的平板电脑后,谷歌重新设计了用户界面—— 以及开发人员用来创建用户界面的API——通过一个叫做Fragment的新类。
Fragment既不是Activity的子类,也不是View的子类。类似活动,片段可包含处理用户交互的代码。可以像Android小组件那样来布局Fragment,但它不是小组件。片段是包含与用户交互的代码的容器。
Fragment类包括一些生命周期方法,但它不是一个Android组件。对于Fragment中的生命周期方法,其作用是把包含该Fragment的Activity的生命周期事件传递给该活动中包含的Fragment。也就是说,个别Fragment实例从来不会被销毁,但包含它们的Activity实例会被销毁。
在本章的示例中,三件最重要的事情是:
●用于处理用户与Android小组件交互的代码;
●重写生命周期方法,如在Activity示例中启用日志记录,所以你可以对照活动生命周期观察何时调用这些方法;
●有些生命周期方法是Fragment所特有,这些方法主要用于实现片段对象的初始化。
除了Fragment的子类这些方面的内容,你还会看到一些把数据放在列表中的代码。