Typeface iconfont = Typeface.createFromAsset(getAssets(), "iconfont/iconfont.ttf"); TextView textview = (TextView)findViewById(R.id.like); textview.setTypeface(iconfont); textview.setTextSize(40);
问题是字体文件哪里来?
从这里来 http://www.iconfont.cn/
打开上面的网页,鼠标往下滚,挑一些你需要的图标导出来就得到了ttf文件,将其中的ttf文件copy到assets文件夹下即可。
我这里使用的是“淘宝图标库”里的图标。(PS:最好不要选择“阿里妈妈图标库”里的图标,生成出来后,程序运行直接出错,可能跟NDK的bug有关)
<TextView android:id="@+id/like" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/icons" android:textColor="@android:color/holo_blue_light" />
<string name="icons">㑁㐸㐻㐽㐼㐾㐺㐹㐿㑂㑀㐷</string>
上面类似㑁的表示一个小图标,这个可以在刚才导出来的文件夹中有一个html文件,打开这个html文件即可看到对应的文本和图标,copy到string.xml中即可。
我使用后的效果见图,是12星座喔。
另外还有一个字体库Font-Awesome,下载后copy其中的fontawesome-webfont.ttf文件到assets文件夹,下载地址:
http://fortawesome.github.io/Font-Awesome/
还需要从github上下载一个字符串资源放到res目录下的values目录,网址见 https://github.com/liltof/font-awsome-for-android
具体方法见: http://blog.csdn.net/sbsujjbcy/article/details/44900263
实现了在 Android 上集成 FontAwesome 图标字体:Iconify
http://www.open-open.com/lib/view/open1439900695989.html
Iconify库重大更新,更好更强大
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0817/3312.html
https://github.com/JoanZapata/android-iconify