0.前言
项目开发中,ViewPager
配合页面导航的 UI 结构经常出现,但是有很大的可能 UI 所设计的界面无法通过 Android 原生的 TabLayout
来实现,所以就整理了一些 TabLayout
的开源框架提供参考。
1.FlycoTabLayout
一个 Android TabLayout
库,目前有3个 TabLayout
可供使用。
SlidingTabLayout
:参照PagerSlidingTabStrip
进行大量修改.
CommonTabLayout
:不同于SlidingTabLayout
对ViewPager
依赖,它是一个不依赖ViewPager
可以与其他控件自由搭配使用的TabLayout
.
SegmentTabLayout
2.MagicIndicator
一个强大、可定制、易扩展的 ViewPager
指示器框架。是ViewPagerIndicator
、TabLayout
、PagerSlidingTabStrip
的最佳替代品。支持角标,更支持在非 ViewPager
场景下使用(使用 hide()
、show()
切换 Fragment
或使用 setVisibility
切换 FrameLayout
里的 View 等)
有兴趣的朋友可以去看看这个库的一系列文章
MagicIndicator系列之一 —— 使用MagicIndicator打造千变万化的ViewPager指示器
MagicIndicator系列之二 —— MagicIndicator使用指南
MagicIndicator系列之三 —— MagicIndicator原理浅析及扩展MagicIndicator的4种方式
3.CoordinatorTabLayout
CoordinatorTabLayout
是一个自定义组合控件,可快速实现 TabLayout
与 CoordinatorLayout
相结合的样式 继承至CoordinatorLayout
, 在该组件下面使用了 CollapsingToolbarLayout
包含 TabLayout
其实还有部分很棒的开源库,但是鉴于长期没有进行代码更新,并没有在上面出现比如 JakeWharton 大神的ViewPagerIndicator和PagerSlidingTabStrip