先来看效果图:
在2.x版本时代,我们都是使用TabActivity和TabHost组合来实现页面的tab切换。TabActivity是一个特殊的Activity,它继承自ActivityGroup,内部可容纳多个Activity,违反了Activity的单一窗口原则,虽风靡一时却难免被抛弃。
3.0版本出现之后,Google推出了一个新的类Fragment,且TabActivity已经被标注为Deprecated了,推荐我们使用Activity和Fragment组合来实现应用的页面切换。虽然在新的版本中出现了FragmentTabHost这么一个替代品,来替换之前的TabHost,但是使用该类时每次切换tab都会导致Fragment被销毁和重新创建。
这里,我们使用自己的方式来实现微信主界面的切换效果,并保持Fragment实例的状态。
在使用Fragment之前,需要先熟悉几个类,包括FragmentActivity、FragmentManager、FragmentTranscation。一个FragmentActivity内部可以容纳多个Fragment,Fragment的管理需要依靠FragmentManager,在执行Fragment的增加(add)、替换(replace)、解除&#x