欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

TabLayout的使用

程序员文章站 2022-06-01 09:12:22
...

首先,我们先来介绍一下TabLayout。
TabLayout在源码中的定义是:
TabLayout provides a horizontal layout to display tabs.
意思是TabLayout提供了一个显示选项卡的水平布局。
如果要使用TabLayout,我们先在app的build.gradle中添加:

compile 'com.android.support:design:23.1.1'

一.TabLayout的使用方法
1.首先在布局中加入控件

    <android.support.design.widget.TabLayout
        android:id="@+id/tab"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </android.support.design.widget.TabLayout>

2.在代码中设置

tabLayout = (TabLayout) findViewById(R.id.tab);
tabLayout.addTab(tabLayout.newTab().setText("动画"));
tabLayout.addTab(tabLayout.newTab().setText("电影"));
tabLayout.addTab(tabLayout.newTab().setText("电视"));

当然,还有另外一种方法,直接在布局文件中设置:

 <android.support.design.widget.TabLayout
        android:id="@+id/tab"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <android.support.design.widget.TabItem
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="动画"/>
        <android.support.design.widget.TabItem
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="电影"/>
        <android.support.design.widget.TabItem
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="电视"/>
    </android.support.design.widget.TabLayout>

3.最终效果如图:

TabLayout的使用

当然,这只是最简单的使用方法,过于简陋,我们还可以给选项添加各种效果

app:tabSelectedTextColor    //改变选中字体的颜色
app:tabTextColor    //改变未选中字体的颜色
app:tabIndicatorColor   //改变指示器下标的颜色
app:tabBackground   //改变整个TabLayout的颜色
app:tabTextAppearance="@android:style/TextAppearance.Holo.Large"    //设置文字的外貌
app:tabIndicatorHeight="5dp"    //设置指示器下标的高度,设置下标的高度为0,相当于没有下标。
app:tabMode="scrollable"    //设置Tab的模式,默认是fixed:固定的,标签很多时候会被挤压,不能滑动。
app:tabGravity="center" //设置内容的显示模式,居中,如果是fill,则是充满

我们还可以在tab中设置图标:

tabLayout.addTab(tabLayout.newTab().setText("动画").setIcon(R.mipmap.ic_launcher));

最后的效果如下:

TabLayout的使用

相关标签: android TabLayout