ViewPager和fragment切换只能实现简单样式,市场app大部分实现tab选项卡切换,自己动手实现选项卡效果会非常复杂,Tablayout继承自HorizontalScrollView,用作页面切换指示器,因使用简便功能强大而广泛使用在App中
ViewPager控件有个特有的预加载机制,即默认情况下当前页面左右两侧的1个
页面会被加载,以方便用户滑动切换到相邻的界面时,可以更加顺畅的显示出来,但是欲加载页面比较多的情况下很容易造成OOM内存溢出,用户体验极差,目前市场需求对app优化是有力的提薪点,fragment懒加载可以避免OOM。
一个Activity多个Fragment去构建一个App的整体架构,这样的好处多多,所以我们可以利用简单工厂设计模式搭建一个多Fragment公用同一个Activity,这样只需要注册一次Activity,而且使用Fragment做视图,组装更灵活,渲染更快,也可以统一修改加载动画。