ViewPagerを使用PagerTabStrip
して追加できるように、タブを追加したいアプリに取り組んでいます。TabLayout
私には同じように見えますが、違いはあると思いますので、この2つのクラスです。では、それらの主な違いは何ですか?
ViewPagerを使用PagerTabStrip
して追加できるように、タブを追加したいアプリに取り組んでいます。TabLayout
私には同じように見えますが、違いはあると思いますので、この2つのクラスです。では、それらの主な違いは何ですか?
ビジュアルだけ比較すると…
TabLayout
は、 Android 5.0 で廃止されたActionBar タブを置き換える重要な概念です。
拡張されてHorizontalScrollView
いるため、テキスト、アイコン、またはカスタム ビューを含むタブを水平方向に追加し続け、ページングなしで直線的にスクロールできます。
TabLayout
は、のような の一部ではなく、 にアタッチする方法setupWithViewPager(ViewPager viewPager)
を提供します。ViewPager
ViewPager
PagerTabStrip
APagerTabStrip
は、ViewPager の現在のページのインジケーターであり、「ViewPager ウィジェットの子ビューとして使用することを目的としています」。TabLayout
各タブは個別に水平方向にスクロールできるのではなく、ページの一部であるため、スクロールは のようには機能しません。
要約すると、違いは(ビジュアルを除く)です。
TabLayout
はの外側のActivity/Fragment の一部であり、ViewPager
代わりに 1 つにアタッチします。ページとは別にスクロールします。PagerTabStrip
はの子要素ですViewPager
。タブはページとともにスクロールします。Developer.androidから、TabLayout はマテリアル デザインの概念であり、PagerTabStrip よりも新しい概念であることがわかっていると言えます。
両方の基本階層を確認できます
1) タブレイアウト階層
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を確認してください。