Android使用字体代替图标
前言
新年过后,大家想必还沉浸在过年的气氛中,还没有走出来过年的喜悦和放松的心情。本人也是急急忙忙的回到工作岗位中,本来想着在过年的放假的时候来书写几篇博客,这些东西都是在年底做项目用到的,虽然网上有很多介绍的,但是自己梳理一遍,留个记录增加印象,不喜勿喷,希望和大家共同进步。
正题
大家在做项目中经常都是按着UIMM(ui美眉)给的设计稿进行编写,需要什么图片,背景图都管UIMM要。本人小白在一家外包公司做的这个项目。当时经理把情况说完之后整的本人已经懵逼,没有UI?那图片背景哪里来?使用字体代替图标。来看一下设计稿:
像个人按钮图标,通知字样,以及下面的白色图标都是由字体来设置的。下面我们来看一下如何使用字体代替图标的。
资源
经理给我发了一个压缩包,解压之后就是这个样子的:
大家注意箭头标注的地方,那个就是我们需要往项目中拷贝的字体文件,在Android Studio项目中src->main中创建assets资源文件夹,注意:这个文件夹名字不要写错了!!!。然后在这个文件夹下在创建一个字体文件夹,这个文件夹的名字就可以随便起啦,不过一般都会见名知意,我起的名字是fonts(字体的意思),然后将我们的字体文件拷贝到fonts文件夹下,准备工作ok,目录结构如下:
使用方法
打开资源解压后的文件夹,找到这个文件,然后打开这个文件
打开是这个样子的
我们看到了需要用的图标,来说一下具体的使用方法:首先你需要在布局文件中定义一个TextView,
<TextView
android:id="@+id/tv_notice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:layout_gravity="center_vertical"
android:textSize="40sp"
android:textColor="@color/btn_color"/>
你可以设置字体的大小,颜色,就和TextView的XML使用方式一样,然后在Java代码中找到这个TextView,设置这个字体图标。
Typeface font = Typeface.createFromAsset(getAssets(), "fonts/iconfont.ttf");
tvNewCreate.setTypeface(font);
tvNewCreate.setText(getResources().getString(R.string.new_create));
注意:这里的指定字体文件就是当初我们拷贝到资源文件夹下的,所以路径不要写错,否则就报错找不到了!
这里面用到了value->string文件,这个文件需要自己按照图标下面的编码自己去定义,定义格式如下:
到这里,使用字体代替图标的方法已经介绍完毕。运行代码你就看见你想要的图标效果了。
结束语
博主写文章可能有些啰嗦,希望大家不要介意,有什么问题或者错误的地方还望大佬及时指出,这样可以避免后面的开发者减少不必要的弯路。虽然技术不是很强,但是写点实际开发中用到的东西希望帮助一些真正需要帮助的人。新年已过,希望自己收收心,后面会陆陆续续的更新自己年假未完成的博客,新年新开始,希望大家一起共同进步,汪年快乐哟!
下一篇: python代码开头的二行注释