Android 如何集成图标字体

示例

为了使用图标字体,只需按照以下步骤操作:

  • 将字体文件添加到您的项目

    您可以从icomoon等在线网站创建字体图标文件,在该网站上可以上传所需图标的SVG文件,然后下载创建的图标字体。然后,将.ttf字体文件放入资产文件夹中名为fonts的文件夹中(根据需要命名):

    放置字体文件的位置

  • 创建一个助手类

    现在,创建以下帮助器类,以便避免重复字体的初始化代码:

    public class FontManager {
     public static final String ROOT = "fonts/";
     FONT_AWESOME = ROOT + "myfont.ttf";
     public static Typeface getTypeface(Context context) {
       return Typeface.createFromAsset(context.getAssets(), FONT_AWESOME);
     }
    }

    您可以使用Typeface该类以从资产中选择字体。这样,您可以将字体设置为各种视图,例如,设置为按钮:

    Button button=(Button) findViewById(R.id.button);
    Typeface iconFont=FontManager.getTypeface(getApplicationContext());
    button.setTypeface(iconFont);

    现在,按钮字体已更改为新创建的图标字体。

  • 拿起你想要的图标

    打开附加到图标字体的styles.css文件。在这里,您将找到带有Unicode字符图标的样式:

    .icon-arrow-circle-down:before {
     content: “\e001”;
    }
    .icon-arrow-circle-left:before {
     content: “\e002”;
    }
    .icon-arrow-circle-o-down:before {
     content: “\e003”;
    }
    .icon-arrow-circle-o-left:before {
     content: “\e004”;
    }

    此资源文件将用作字典,该字典将与特定图标相关联的Unicode字符映射到人类可读的名称。现在,如下创建字符串资源:

    <resources>
     <! — Icon Fonts -->
     <string name=”icon_arrow_circle_down”>&#xe001; </string>
     <string name=”icon_arrow_circle_left”>&#xe002; </string>
     <string name=”icon_arrow_circle-o_down”>&#xe003; </string>
     <string name=”icon_arrow_circle_o_left”>&#xe004; </string>
    </resources>
  • 使用代码中的图标

    现在,您可以在各种视图中使用字体,例如,如下所示:

    button.setText(getString(R.string.icon_arrow_circle_left))

    您也可以使用图标字体创建按钮文本视图:

    示例按钮上带有图标