Android使用IconFont矢量图标库

iconfont矢量图标库又叫字体库

如何使用

一、使用自定义view

1.自定义view继承TextView,在构造方法中setTypeface

Typeface typeface = Typeface.createFromAsset(getAssets(),"iconfont.ttf");

setTypeface(typeface);

2.调用

IconFontView iconFontView;//继承TextView

iconFontView.setText("\ue607");//unicode编码

iconFontView.setText(String.ValueOf((char)58887));//e607的十进制值58887

3.setText的值,两种设置方法

1)打开.ttf文件,获取其中矢量图标的unicode编码,如e607,则设置为"\ue607"。

2)将e607转成十进制数,再转成char类型的字符串。这是为什么呢

4.遇到的问题

1)"\\u" + "e607"是不行的

2)项目中用数据库保存图标的int值,如58887,为什么不保存字符串呢,如"\ue607"

5.typeface的初始化

应该在application中初始化,否则容易造成卡顿

二、使用LayoutInflaterFactory

参考:张鸿洋Android IconFont全攻略


.ttf文件

.ttf文件就是iconfont矢量图标库,使用时放在assets目录下。

如何打开.ttf文件

直接打开你会懵逼的

一、推荐工具

1.FontLab Studio 5。百度搜fontlab,很多网址可以下载,不过都是那种恶心的捆绑安装,注意全部把√点掉。官网非免费。我是实在找不到工具打开了

2.File->open打开.ttf文件


3.点击图标可以看到unicode编码,如E607。右键鼠标,选择properties可以打开这个小窗口

4.还是在简书上找到这个工具的,同事说百度随便搜,我找了半天,呵呵哒

iconfont矢量图标库的素材下载

一、推荐地址

1. 阿里矢量图标库

2. 国外的icomoon

3. Font Awesome

二、如何创建.ttf文件

网上教程一大堆

三、如何将新的素材添加到.ttf文件中

推荐阅读更多精彩内容