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.最终效果如图:
当然,这只是最简单的使用方法,过于简陋,我们还可以给选项添加各种效果
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));
最后的效果如下:
上一篇: PHP:路在何方?_PHP教程
下一篇: 反序列化
推荐阅读
-
科技行业的窘境:经济复苏而科技业却步履蹒跚 活动英特尔
-
在MySQL数据库中如何来复位根用户的密码
-
使用PHP socke 向指定页面提交数据_php技巧
-
一个电子商务系统,进去localhost的admin目录无法显示目录下的文件,而是直接跳到后台网站
-
PHP创建word文档的方法(平台无关),_PHP教程
-
PHP curl使用实例_PHP教程
-
请大家帮我看一下我这段代码中的ul和a为什么不能显示在同一行中。_html/css_WEB-ITnose
-
ie8 不支持new Date(2012-11-10)问题的解决方法_javascript技巧
-
轻松掌握如何保护MySQL中的重要数据_MySQL
-
MySQL中不能创建自增字段的解决方法