zoukankan      html  css  js  c++  java
  • TabLayout您可能不知道的实用用法

    一、修改点击的动画

    函数:setUnboundedRipple
    这是默认的点击的动画

    我们用代码修改一下:

    mGlueTabLayout.setUnboundedRipple(true);
    

    这是之后的效果:

    二、设置下划线指示器的宽度不要填充完(动态的根据TabView的宽度来设置自身的宽度)

    函数:setTabIndicatorFullWidth
    这是默认的效果

    我们用代码修改一下:

    mGlueTabLayout.setTabIndicatorFullWidth(false);
    

    这是之后的效果:

    三、设置下划线指示器的样式

    函数:setSelectedTabIndicator
    这是默认的效果

    我们用代码改变:

    GradientDrawable gradientDrawable = new GradientDrawable();
    gradientDrawable.setCornerRadius(dp2px(2));
    mGlueTabLayout.setSelectedTabIndicator(gradientDrawable);
    

    我改变了其的直角,变为了圆角,看效果吧:

    您也可以在res/drawable文件夹下写个xml文件传入setSelectedTabIndicator(@DrawableRes int tabSelectedIndicatorResourceId),效果是一样的。

    这个您也许也需要

    粘动动画.gif
    这个动画很好看,我也在一些应用上看到它的影子,比如微博。

    所以,我写了GlueTabLayout简单扩展了TabLayout,添加了这个动画,GlueTabLayout本质就是TabLayout,一点未变,您怎么用TabLayout,就可以怎么使用GlueTabLayout,是不是很友好,哈哈。
    我还添加了一个TabLayout没有提供的方法,我添加了精确设置下划线指示器宽度的方法。

    我把它开源了,用以方便有需要的人,更详细的描述移步 GitHub

    以上 :)

  • 相关阅读:
    每周必写
    每周必写
    每周必写
    中国历史上成功的两人合作, 改进, 提高的例子
    每周必写(3)
    结对编程进度及自己的理解
    每周必写
    IT行业的“创新”、“模仿”
    工作时间内容,感想和思考
    周阅读内容
  • 原文地址:https://www.cnblogs.com/duan-xue-bin/p/10059516.html
Copyright © 2011-2022 走看看