android中使用iconfont图标字体

和阿里聚划算团队的接触,了解了iconfont;(我们可以把app中图标替换成iconfont来实现)

为什么要使用iconfont代替ImageView来实现app中图标的显示?
      1.图标集中处理,存放在.ttf文件中,避免重复资源。
      2.减少app包的大小,每个icon只是一小段文本,文件的大小要比图片形式的icon小的多。
      3.节省内存,iconfont与普通的文本一样使用矢量图的方式绘制,相比图片分配内存方式,消耗的内存可以忽略不计。
      4.iconfont和文字的实现方式是一样的,所以可以使用不同分辨率和不同尺寸的屏幕(所显示的图标都很清晰)。

iconfont的使用起来很简单,下面简单介绍下:

   把.ttf(存放图标所对应的字符序列)文件放入项目下的assets文件夹下,下面就是在工程中使用了:】
   Typeface iconfont = Typeface.createFromAsset(getAssets(), "iconfont.ttf");
   TextView textView = new TextView(this);
   textView.setText("㘅 㖭 㖮 㖯");
   或者textView.setText("\u3605");
   textView.setTextColor();TextView.setTextSize();//设置图标的大小和颜色。
   textView.setTypeface(iconfont);//OK这样我们的TextView就会显示你想要的图标了。显示图标就像显示字体一样简单。

   为避免代码的重复使用,我们可以自定义一个TextView。
   public class IconTextView extends TextView{
         public IconTextView(Context context,AttributeSet attrs){
              super(context,attrs);
              Typeface iconfont = Typeface,createFromAssets(getAssets(),"iconfont.ttf");
              setTypeface(iconface);
         }
   }

你可能感兴趣的:(android)