Android中的HTextView库实现TextView动画效果

 更新时间:2023年12月02日 10:18:39   作者:阿博聊编程  
HTextView是一个用来给TextView里的文字做各种转换动画的开源库,不仅提供了多种动画选择,而且还有重复字符的位移动画,虽然并没有多么复杂,但是它使用的这些典型的设计模式以及各种动画的实现确实可以从中让我们学到不少知识

Android开发中,我们可能会遇到实现某个TextView实现动画效果。关于这种需求,我给小伙们推荐推荐HTextView开源库,希望能小伙伴们提高开发效率。HTextView是一个用来给TextView里的文字做各种转换动画的开源库。

HTextView前言

第一次看到这个库的时候就被这些动画吸引了,不仅提供了多种动画选择,而且还有重复字符的位移动画,的确别出心裁,虽然实现起来并不是多么复杂,但是从1700+的star数上还是可以看出它的受欢迎程度,所以今天我们就来分析看看它到底是如何实现的.有哪些值得我们借鉴的地方,又有哪些不完善的地方。

HTextView的简单使用方法

HTextView的使用方法还是比较简单的,只需要调用hTextView.setAnimateType();来设定一种动画的类型,再调用hTextView.animateText();将字符串传入就可以执行切换动画了,此外还提供了hTextView.reset();方法来重置动画,具体代码如下:

hTextView.setAnimateType(HTextViewType.SCALE);
hTextView.animateText(sentences[mCounter]);

HTextView引入

写博客的时候,最新的版本是0.1.6。小伙伴们使用的时候,可以看看有没有更新版本。引入基础模块:

implementation "com.hanks:htextview-base:0.1.6" 

下面的可以按需引入:

implementation "com.hanks:htextview-fade:0.1.6"       
implementation "com.hanks:htextview-line:0.1.6"       
implementation "com.hanks:htextview-rainbow:0.1.6"     
implementation "com.hanks:htextview-typer:0.1.6"     
implementation "com.hanks:htextview-scale:0.1.6"       
implementation "com.hanks:htextview-evaporate:0.1.6"   
implementation "com.hanks:htextview-fall:0.1.6" 

line使用以及效果

<com.hanks.htextview.line.LineTextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="right"
    android:paddingRight="10dp"
    android:text="This is LineTextView\nToday is Monday"
    android:textSize="16sp"
    app:animationDuration="3000"
    app:lineColor="#1367bc"
    app:lineWidth="4dp"/>

fade使用以及效果

<com.hanks.htextview.fade.FadeTextView
    android:layout_width="240dp"
    android:layout_height="150dp"
    android:gravity="left"
    android:letterSpacing="0.08"
    android:lineSpacingMultiplier="1.3"
    android:text="This is FadeTextView"
    android:textColor="#fff"
    android:textSize="20sp"
    app:animationDuration="1500"/>

typer使用以及效果

<com.hanks.htextview.typer.TyperTextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="this is init sentence."
    app:charIncrease="3"
    app:typerSpeed="80"/>

rainbow使用以及效果

<com.hanks.htextview.rainbow.RainbowTextView
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:gravity="right"
    android:text="this is init sentence"
    android:textSize="20sp"
    app:colorSpace="150dp"
    app:colorSpeed="4dp"/>

scale使用以及效果

<com.hanks.htextview.scale.ScaleTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="this is init sentence"
    android:textSize="16sp"/>

evaporate使用以及效果

<com.hanks.htextview.evaporate.EvaporateTextView
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:gravity="center"
    android:paddingTop="8dp"
    android:text="this is init sentence"
    android:textSize="20sp"/>

fall使用以及效果

&lt;com.hanks.htextview.fall.FallTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="20dp"
    android:text="this is init sentence"
    android:textSize="16sp"/&gt;

总结

至此,我们就算是彻底了解了HTextView,虽然并没有多么复杂,但是它使用的这些典型的设计模式以及各种动画的实现确实可以从中让我们学到不少知识。尤其是各种动画的具体实现,能为我们自己在做相关动画时提供不少思路!感觉给TextView加动画效果还是很棒的,有机会的话可以在项目中使用到。

到此这篇关于Android中的HTextView库实现TextView动画效果的文章就介绍到这了,更多相关Android中的HTextView库实现动画内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Android Notification使用教程详解

    Android Notification使用教程详解

    这篇文章主要介绍了Android Notification使用,通知的使用的内容还是比较多的,此篇文章将会尽可能详细的介绍Notification的内容,需要的朋友可以参考下
    2022-07-07
  • Android 组合控件实现布局的复用的方法

    Android 组合控件实现布局的复用的方法

    本篇文章主要介绍了Android 组合控件实现布局的复用的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Android实现简单的banner轮播图

    Android实现简单的banner轮播图

    这篇文章主要为大家详细介绍了Android实现简单的banner轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Android实现离线缓存的方法

    Android实现离线缓存的方法

    离线缓存就是在网络畅通的情况下将从服务器收到的数据保存到本地,当网络断开之后直接读取本地文件中的数据。本文给大家介绍Android实现离线缓存的方法,需要的朋友参考下
    2016-03-03
  • Flutter实现资源下载断点续传的示例代码

    Flutter实现资源下载断点续传的示例代码

    在项目开发中,特别是C端的产品,资源下载实现断点续传是非常有必要的。今天我们不讲过多原理的知识,分享下简单实用的资源断点续传
    2022-07-07
  • Android教程之开机流程全面解析

    Android教程之开机流程全面解析

    这篇文章主要介绍了Android开机流程,非常全面的分析了Android开机常见形式、函数调用与相关注意事项,需要的朋友可以参考下
    2016-06-06
  • Android RecyclerView添加头部和底部的方法

    Android RecyclerView添加头部和底部的方法

    这篇文章主要为大家详细介绍了Android RecyclerView添加头部和底部的方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • Android与H5交互产生Script Error踩坑解决

    Android与H5交互产生Script Error踩坑解决

    这篇文章主要为大家介绍了Android与H5交互产生Script Error问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Android发送GET与POST请求的DEMO详解

    Android发送GET与POST请求的DEMO详解

    本篇文章是对Android发送GET与POST请求的DEMO进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 浅析Android高斯模糊实现方案

    浅析Android高斯模糊实现方案

    这篇文章给大家介绍了Android高斯模糊实现方案,本文通过场景分析代码讲解的非常详细,需要的朋友参考下吧
    2019-10-10

最新评论