Android Material Design TabLayout属性app:tabMode和app: tabGravity
Android Material Design TabLayout属性app:tabMode和app: tabGravity
Android Material Design 中的TabLayout有两个比较有用的属性 app:tabMode、app:tabGravity,
(1)app:tabMode有两个值:fixed和scrollable。
(2)app:tabGravity有两个值:fill和center。
比较常用的是app:tabMode设置值scrollable,以及app:tabGravity设置值center。
比如,当app:tabMode设置值scrollable表示此TabLayout中当子view超出屏幕边界时候,将提供滑动以便滑出不可见的那些子view。
而app:tabGravity设置值center,在有些情况下,比如TabLayout中子view较少需要居中显示时候的情景。
现在给出一个例子加以说明。
测试的MainActivity.java:
package zhangphil.view;import android.app.Activity;
import android.os.Bundle;
import android.support.design.widget.TabLayout;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);TabLayout tabLayout1 = (TabLayout) findViewById(R.id.tabLayout1);TabLayout tabLayout2 = (TabLayout) findViewById(R.id.tabLayout2);TabLayout tabLayout3 = (TabLayout) findViewById(R.id.tabLayout3);TabLayout tabLayout4 = (TabLayout) findViewById(R.id.tabLayout4);for (int i = 0; i < 6; i++) {tabLayout1.addTab(tabLayout1.newTab().setText("卡" + i));tabLayout2.addTab(tabLayout2.newTab().setText("卡" + i));}for (int i = 0; i < 10; i++) {tabLayout3.addTab(tabLayout3.newTab().setText("卡" + i));tabLayout4.addTab(tabLayout4.newTab().setText("卡" + i));}}
}
MainActivity.java需要的布局文件activity_main.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical" ><android.support.design.widget.TabLayoutandroid:id="@+id/tabLayout1"android:layout_width="match_parent"android:layout_height="wrap_content"app:tabGravity="fill"app:tabMode="fixed" /><android.support.design.widget.TabLayoutandroid:id="@+id/tabLayout2"android:layout_width="match_parent"android:layout_height="wrap_content"app:tabGravity="center"app:tabMode="fixed" /><android.support.design.widget.TabLayoutandroid:id="@+id/tabLayout3"android:layout_width="match_parent"android:layout_height="wrap_content"app:tabGravity="fill"app:tabMode="scrollable" /><android.support.design.widget.TabLayoutandroid:id="@+id/tabLayout4"android:layout_width="match_parent"android:layout_height="wrap_content"app:tabGravity="center"app:tabMode="scrollable" /></LinearLayout>
效果如图所示:
Android Material Design TabLayout属性app:tabMode和app: tabGravity相关推荐
- TabLayout使用介绍(com.google.android.material.tabs.TabLayout)
TabLayout TabLayout的使用 一.控件库的导入 二.基本使用 activity_main.xml TabFragment.java MainActivity.java 三.TabLay ...
- Android Material Design简单使用 http://www.cnblogs.com/android-blogs/p/5632103.html
Android Material Design简单使用 吐槽 作为一个 Android developer,没有什么比拿着 UI 设计的一堆 iOS 风格的设计 来做需求更恶心的了,基本所有空间都要照 ...
- Android Material Design 系列之 BottomNavigationView + ViewPager + Fragment + BadgeView 开发详解
前言 BottomNavigationView 是 Material Design 提供的一个标准底部导航栏的实现,可以轻松的实现导航栏菜单之间的切换与浏览.底部导航使用户更方便的查看和切换最高层级的 ...
- com.google.android.material.tabs.TabLayout 选择tab 加粗字体加大
引用: https://blog.csdn.net/qq_34906385/article/details/93524163 <com.google.android.material.tabs. ...
- Android Material Design :LinearLayoutCompat添加分割线divider
Android Material Design :LinearLayoutCompat添加分割线divider Android Material Design 扩展支持包中的LinearLayo ...
- 视频教程-Android Material Design 新控件-Android
Android Material Design 新控件 刘志远,北京邮电大学硕士研究生, 北京育华志远科技有限公司创始人, 育华志远教育品牌负责人,育华志远课程体系打造者. 率领团队为互联网行业培训千 ...
- Android Material Design Icon Genenerator 插件为个人开发者提供 Icon 图标大全
前言 如果你作为个人开发者,没有美工小姐姐的情况下,项目中的图标 icon 很是苦恼.之前用过阿里巴巴图标库 Iconfont,后来发现 Android studio 中有一个很牛逼的 icon 插件 ...
- Android Material Design按钮样式
本文翻译自:Android Material Design Button Styles I'm confused on button styles for material design. 我对材质设 ...
- android夜间模式揭露动画,Android Material Design系列之夜间模式
今天我们讲讲夜间模式的实现,这篇文章的名字应该叫:<Android Material Design系列之夜间模式>.在Android 5.0 之后,实现夜间模式并非很难了,支持的5.0库提 ...
最新文章
- C#反射使用时注意BindingFlags的用法(转载)
- HTML5 drag drop 拖拽与拖放简介
- python手机版下载3.7.3-Python 3.7.0 来了!
- Ubuntu Server 上在安装Nginx时执行./confgiure后提示:C compiler cc is not found
- boost::signals2模块实现用于从槽返回值到信号调用的示例程序
- SpringBoot项目的application.properties放在Jar包外加载
- 空间数据库Spatial Tools的使用
- Android 调用12306接口,GitHub - AndroidyxChen/loading-12306: 仿PC端12306的刷新loading的自定义view...
- android微信预览pdf,网页的pdf、office链接安卓版面微信浏览器无法打开
- 数据科学:Oracle 并购 DataScience 公司提升机器学习能力
- flex 返回数据到 html5,Flex与javascript通信
- GetSpecialPath 获取应用程序当前目录
- debian 6安装postfix squirrelmail
- 2021-03-16 转自知乎专栏 https://zhuanlan.zhihu.com/p/24482664
- 微软私有云分享(R2)9-SCVMM R2和SP1界面的不同
- 抖音seo,抖音优化系统,抖音seo矩阵系统源码技术搭建
- 自监督学习经典之作:DINO
- Android权限请求第三方库的比较
- java 数字补零_java数字位数不足在前后补0
- [Debug] printf undefined reference to `putchar‘