VerticalTabLayout

垂直竖向的Android TabLayout

一些特性

支持自定义Indicator大小

支持自定义Indicator位置

支持Indicator设置圆角

支持Tab设置Badge

支持Adapter的方式创建Tab

多种Tab高度设置模式

Tab支持android:state_selected

很方便的和ViewPager结合使用

很方便的和Fragment结合使用

how to use:

1. gradle

compile 'q.rorbin:VerticalTabLayout:1.2.5'

VERSION_CODE : here

2. xml

android:id="@+id/tablayout"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="#EDEDED"

app:indicator_color="#FFFFFF"

app:indicator_gravity="fill"

app:tab_height="50dp"

app:tab_mode="scrollable" />

3. 属性说明

xml

code

说明

app:indicator_color

setIndicatorColor

指示器颜色

app:indicator_width

setIndicatorWidth

指示器宽度

app:indicator_gravity

setIndicatorGravity

指示器位置

app:indicator_corners

setIndicatorCorners

指示器圆角

app:tab_mode

setTabMode

Tab高度模式

app:tab_height

setTabHeight

Tab高度

app:tab_margin

setTabMargin

Tab间距

4. 创建Tab的方式

普通方式创建

tablayout.addTab(new QTabView(context))

tablayout.addOnTabSelectedListener(new VerticalTabLayout.OnTabSelectedListener() {

@Override

public void onTabSelected(TabView tab, int position) {

}

@Override

public void onTabReselected(TabView tab, int position) {

}

});

Adapter方式创建

tablayout.setTabAdapter(new TabAdapter() {

@Override

public int getCount() {

return 0;

}

@Override

public TabView.TabBadge getBadge(int position) {

return null;

}

@Override

public TabView.TabIcon getIcon(int position) {

return null;

}

@Override

public TabView.TabTitle getTitle(int position) {

return null;

}

@Override

public int getBackground(int position) {

return 0;

}

});

按照自己的需要进行返回相应的值即可,不需要的返回0或者null

也可以选择使用SimpleTabAdapter,内部空实现了TabAdapter的所有方法

TabBadge、TabIcon、TabTitle使用build模式创建。

结合ViewPager使用

tablayout.setupWithViewPager(viewpager);

ViewPager的PagerAdapter可选择实现TabAdapter接口

结合Fragment使用

tabLayout.setupWithFragment(FragmentManager manager, int containerResid, List fragments, TabAdapter adapter)

5. 设置badge

int tabPosition = 3;

int badgeNum = 55;

tablayout.setTabBadge(tabPosition,badgeNum);

Badge badge = tablayout.getTabAt(position).getBadgeView();

Badge使用方法请移步https://github.com/qstumn/BadgeView

6.更新计划

抽象解耦Indicator,实现绘制任意形状Indicator

LICENSE

Copyright 2016, RorbinQiu

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

android tab 纵向,GitHub - luonzke/VerticalTabLayout: 垂直纵向的TabLayout、轻松创建纵向导航...相关推荐

  1. 使用Android Studio向GitHub提交代码

    使用Android Studio向GitHub提交代码 在GitHub上创建一个仓库 填写仓库名称.描述.类型(公有.私有)等信息,点击创建 到此,成功创建了我们的仓库,并且初始化创建了README. ...

  2. [Android开源项目] GitHub开源项目总结 (转)

    [Android开源项目] GitHub开源项目总结 GitHub开源项目android-styled-dialogs http://neast.cn/forum.php?mod=viewthread ...

  3. git命令下载项目,上传android项目到github步骤,以及取消项目关联Git,设置git忽略文件

    设置忽略文件 1.工程下创建文件夹gitignore.push即可 *.iml .gradle /local.properties /.idea/caches /.idea/libraries /.i ...

  4. android tab pageview,Android Fragment在ViewPager中到底经历了什么?

    2017年05月30 最后的懒加载写的不好,推荐请叫我大苏同学写的Fragment懒加载博客, [Android]再来一篇Fragment的懒加载(只加载一次哦) 在大苏同学的博客评论里,看到了另一个 ...

  5. android开源数据库,Android Hawk数据库 github开源项目

    Android Hawk数据库 github开源项目 Hawk 是一个很便捷的数据库  . 操作数据库仅仅需一行代码 , 能存不论什么数据类型 . github 地址: https://github. ...

  6. android高仿京东快报(垂直循环滚动新闻栏)

    的android高仿京东快报(垂直循环滚动新闻栏) 标签: 机器人 2016年3月20日03:08 2676阅读人 评论(15)收藏举报    分类: 机器人(71)  版权声明:本文为博主原创文章, ...

  7. android录制mp3 github,GitHub - understanding/AndroidMP3Recorder: 为Android提供MP3录音功能[持续维护版]...

    AndroidMP3Recorder 项目介绍 本项目Fork自AndroidMP3Recorder,由于原作者停止维护,此项目是我fork下主分支来维护的.相比原项目,此项目支持以下功能: 修复部分 ...

  8. android tab布局框架,android Tab页详解

    一.android Tab的实现方式总结 说起Tab页,基本每个做移动端的都会需要.iOS中内置了一个,所以ioser用起来很方便.而android这一块就比较乱. 木器实现Tab效果的方式,主要有4 ...

  9. android导入github项目,上传Android项目至github的解析

    这是一个新的系列的文章,github项目,主要讲解了自己的github项目开源实践,github项目解析等. 本文主要讲解了如何将自己的android项目上传至github,相信大家平时在开发过程中为 ...

最新文章

  1. golang 字段 序列化 反序列化 简介
  2. 深入理解JAVA虚拟机 虚拟机性能监控和故障处理工具
  3. Shell-实际业务操作03
  4. linux内核和w,Linux内核中Makefile、Kconfig和.config的关系
  5. commons dbutils 的介绍与使用
  6. WCF光芒下的Web Service
  7. 山寨威武 仿冒Xoom先于行货获得Android 4.0升级
  8. OpenHarmony移植案例:如何适配服务启动引导部件bootstrap_lite
  9. QlikSense导入oracle数据,【主流BI分析工具对比】12款顶级BI分析工具最佳用例
  10. python 语句执行顺序_一个针对 Python 语句执行顺序的练习
  11. Linux定时任务Crontab详解
  12. linux下的文档处理及tar命令
  13. matlab小波分析时频谱图 声音时频信号处理
  14. Windows中使用命令创建计划任务(at、schtasks)
  15. 中序遍历 java_java二叉树中序遍历递归和非递归实现
  16. Caffe:图像数据转换成ldb(leveldb/lmdb)文件
  17. GIT常见问题及命令指南
  18. 垦丁小吃:一碗150元台币的芒果冰
  19. 去水印小程序源码【2021年8月更新】
  20. 磁盘块管理器DiskBlockManager

热门文章

  1. SpringBoot整合RabbitMq实战(一)
  2. 页表目录和页表结构 图解
  3. java超市收银系统mysql,java课程设计(含数据库代码)
  4. Please specify a program using absolute path or make sure the program is available in your PATH syst
  5. UML之父Ivar Jacobson:软件工程需要重建基础
  6. 北京高新技术企业申报新增要求及解决办法
  7. UML在需求分析与系统设计中之实战讲解(完整UML图形演示)
  8. 二进制推广者电子计算机,31-戏说计算机与二进制那点事儿
  9. centos升级gdb支持pretty-printer
  10. 【高通平台】安卓平板,使用QQ 视频通话,视频旋转90度问题修改