android首页底部tab动画,GitHub - 994914624/TabView: Android首页底部常用tab切换控件

Android TabView

68747470733a2f2f6170692e62696e747261792e636f6d2f7061636b616765732f6973616e77656e79752f6d6176656e2f546162566965772f696d616765732f646f776e6c6f61642e737667

687474703a2f2f696d672e736869656c64732e696f2f62616467652f706c6174666f726d2d616e64726f69642d627269676874677265656e2e7376673f7374796c653d666c6174

68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d417061636865253230322d626c75652e737667

Android首页底部常用tab切换控件

Features

TabViews in TabGroup only one can be checked

TabGroup 参考 RadioGroup api基本一致

TabView 参考 CompoundButton 实现 checkable

Support badge view for reminding

BadgeView is from https://github.com/liyanxi/BadgeView.All its attributes can also apply in the tabview.

Support water ripple effect when it's clicked

Water Ripple View is from https://github.com/isanwenyu/RippleEffect. TabView inherit from RippleView so all its attributes can also apply in the tabview.

Support chain API

Implement BadgeViewControl and RippleViewControl interface support chain API.

Quick Overview

tabview_demo.gif

Getting Started

Add the dependency to your build.gradle.

dependencies {

compile 'com.isanwenyu.tabview:tabview:1.2.5'

}

Maven:

com.isanwenyu.tabview

tabviewg

1.2.5

pom

Usage

xml

android:id="@+id/tg_tab"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:background="@android:color/white"

android:elevation="10dp"

app:checkedTab="@+id/tab_chat">

......

android:id="@+id/tb_user"

style="@style/TabView"

app:badge_color="@android:color/holo_orange_dark"

app:badge_count="888"

app:badge_none_show="true"

app:badge_padding_right="@dimen/tab_img_container_padding"

app:badge_padding_top="@dimen/tab_img_container_padding"

app:imgContainerPadding="@dimen/custom_img_container_padding"

app:imgDrawable="@drawable/tab_user"

app:imgMargin="@dimen/tab_img_margin"

app:rv_centered="true"

app:rv_color="@android:color/holo_orange_dark"

app:rv_framerate="20"

app:rv_rippleDuration="100"

app:rv_zoom="true"

app:rv_zoomDuration="200"

app:rv_zoomScale="1.2"

app:textColor="@color/tab_user_text_selector"

app:textSize="@dimen/tab_view_text_size"

app:textString="我" />

code

//init tab badge view && ripple view,the others setted in activity_main.xml

mChatTabView

.setBadgeColor(getResources().getColor(android.R.color.holo_blue_dark))

.setmDefaultTopPadding((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 2, getResources().getDisplayMetrics()))

.setBadgeShown(true)

.setTabRippleCentered(false)

.setTabRippleColor(android.R.color.holo_blue_dark)

.setTabRippleDuration(100)

//override setOnRippleCompleteListener method in rippleView

.setOnRippleCompleteListener(new RippleView.OnRippleCompleteListener() {

@Override

public void onComplete(RippleView rippleView) {

mChatTabView.setChecked(true);

}

});

((TabView) mTabGroup.getChildAt(1)).setBadgeCount(999)

.setmDefaultTopPadding((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 2, getResources().getDisplayMetrics()))

.setBadgeShown(true)

.setTabRippleEnable(false);

Todo

加入中央仓库

添加红点标识

添加点击水波纹效果

Dependencies

License

Copyright 2016 isanwenyu@163.com

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.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值