Skip to content

tengyukun/TabsIndicator

Repository files navigation

AlphaTabsIndicator

高仿微信底部状态栏的轻量级库,适用多数底部状态栏应用需求

摘要

仿微信底部tab标签,滑动的时候颜色渐变,增加角标功能, 使用极其简单,只需要两行代码

动画

1

截图

1 2 3 4

下载APK体验

点击下载

使用方法

步骤 1

Gradle 配置

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
	
	
dependencies {
	        compile 'com.github.tengyukun:TabsIndicator:v1.0'
	}

步骤 2

布局使用

	        <com.tengyukun.alphatabs.AlphaTabsIndicator
                android:id="@+id/alphaIndicator"
                android:layout_width="match_parent"
                android:layout_height="55dp"
                android:orientation="horizontal">

                <com.tengyukun.alphatabs.AlphaTabView
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:padding="5dp"

                    app:tabIconNormal=""
                    app:tabIconSelected=""
                    app:tabText=""
                    app:tabTextSize=""
                    app:textColorNormal=""
                    app:textColorSelected=""
                    app:badgeBackgroundColor=""
                    app:paddingTexwithIcon=""/>

                <com.tengyukun.alphatabs.AlphaTabView
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:padding="5dp"

                    app:tabIconNormal=""
                    app:tabIconSelected=""
                    app:tabText=""
                    app:tabTextSize=""
                    app:textColorNormal=""
                    app:textColorSelected=""
                    app:badgeBackgroundColor=""
                    app:paddingTexwithIcon=""/>

                    、、、、
                    、、、、

            </com.tengyukun.alphatabs.AlphaTabsIndicator>                                //模式

功能与参数定义

配置参数 参数含义
tabIconNormal 未选中的图标
tabIconSelected 已经选中的图标
tabText tab标签的文字
tabTextSize tab标签的文字大小
textColorNormal 未选中的文字颜色
textColorSelected 已选中的文字颜色
badgeBackgroundColor 角标背景色,默认红色
paddingTexwithIcon 图标和文字之间的距离

代码

AlphaTabView 主要方法
        mAlphaTabView.showNumber(int i); //显示数字角标
        mAlphaTabView.showPoint();       //显示小红点
        mAlphaTabView.removeShow();      //移除当前角标
AlphaTabsIndicator 主要方法
        mAlphaTabsIndicator.setViewPager(ViewPager mViewPger);                     //设置ViewPager
        mAlphaTabsIndicator.setOnTabChangedListner(OnTabChangedListner listner);   //设置底部tab点击监听
        mAlphaTabsIndicator.removeAllBadge();                                      //移除所有tab的角标
        mAlphaTabsIndicator.setTabCurrenItem(int tabIndex);                        //设置tab选项

说明

本库是在征得jeasonlzy的许可后,在其AlphaIndicatorView基础上做的易用性改进,感谢,现持续开源。

改进项主要有:

  1. 增加角标,使其更接近微信底部tab;
  2. 对角标的大小进行动态控制,会根据tab高度自适应;
  3. 对使用要求限制适当降低,可以在不绑定viewpager的情况下使用;
  4. 增加点击tab的监听回调;
  5. 图标和文字之间的距离可以配置,默认为5;
  6. 增加在不绑定ViewPager时可设置tab选项;
  7. 增加在代码mViewPager.setCurrentItem(i)控制状态下tab联动;
  8. 修复在未设置状态下不能点击Tab的问题。