介绍一个Android的开源的自定义小控件:TextDrawable

 TextDrawable在Github的地址:https://github.com/devunwired/textdrawable

 项目作者介绍这个小控件的博客:http://wiresareobsolete.com/wordpress/2012/12/textdrawable-draw-some-text/

在Android中TextView是一个相当重量级的组件。通过这个组件,我们一般能搞定绝大部分需求。

但是当我们需要在一个只能使用Drawable的地方,使用Text.那么TextDrawble也就是其用武之地了。特别是你想简化View的层级结构时,其实如果你一个 LinearLayou中只有TextView和ImageView时,adt 一般会提示你,用TextView然后设置drawableLeft之类的来简化层级结构。

介绍的意义:

一,它短小,纯Java。

 这个小控件只是一个Drawable的子类,代码不多,注释,示例demo都有。

 可以当作学习自定义Drawable的一个 范例。

二,学习Text的一些测量方法。

 学习过Android 2D API的可能都知道了,Android中,可以在canvas中使用drawText()

来在画布中绘制文字。但是是其中文字的的测量是一个很麻烦的事。我看TextView源代码的时候,就觉得,这方面相当的复杂,想从中找到一针对简单的情况的好的解决办法的代码都不容易。

三,一个很具体的使用场景,

一些小图标我们可以使用制作特定的字体来实现。这个用这个字体的TextDrawable

就可以得到很动态的图标了。

四,原作者的github仓库中还有类似,

custom-view-examples

https://github.com/devunwired/custom-touch-examples

等一些有用的短小的小控件,或者小代码。



你可能感兴趣的:(android,textview,TextDrawble,TextLayout)