我正在开发一个应用程序,我想在其中添加选项卡,以便可以使用PagerTabStrip
ViewPagerTabLayout
添加选项卡。
对我来说它看起来一样,没有区别,但我想它们之间有一些区别,所以它们是两个类。那么它们之间的主要区别是什么?
我正在开发一个应用程序,我想在其中添加选项卡,以便可以使用PagerTabStrip
ViewPagerTabLayout
添加选项卡。
对我来说它看起来一样,没有区别,但我想它们之间有一些区别,所以它们是两个类。那么它们之间的主要区别是什么?
只是比较视觉效果...
TabLayout
是在 Android 5.0中取代了已弃用的ActionBar 选项卡的材质概念。
它可以扩展HorizontalScrollView
,因此您可以继续水平添加选项卡,其中可以包括文本、图标或自定义视图,并在不分页的情况下线性滚动它们。
TabLayout
提供setupWithViewPager(ViewPager viewPager)
了附加到a而ViewPager
不是成为.ViewPager
PagerTabStrip
APagerTabStrip
更像是 ViewPager 的当前页面的指示符,并且“它旨在用作 ViewPager 小部件的子视图”。它的滚动不像,TabLayout
因为每个选项卡都是页面的一部分,而不是单独水平滚动。
总之,差异是(除了视觉效果)。
TabLayout
是Activity/Fragment 的一部分,在之外,ViewPager
而是将其附加到一个。它与页面分开滚动。PagerTabStrip
是的子元素ViewPager
。选项卡随页面滚动。从Developer.android我可以说 TabLayout 是材料设计概念,众所周知,它比 PagerTabStrip 是新概念。
您可以检查两者的基本层次结构
1) TabLayout层次结构
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.FrameLayout
↳ android.widget.HorizontalScrollView
↳ android.support.design.widget.TabLayout
2) PagerTabStrip 层次结构
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.support.v4.view.PagerTitleStrip
↳ android.support.v4.view.PagerTabStrip
有关更多详细信息,请检查TabLayout和PagerTabStrip