在Android中使用字体图标(Icon Font)

主要内容

做前端开发的人,对字体图标(iconFont)应该都不陌生(感到陌生的人自己去搜索普及下知识吧(  ̄┏_┓ ̄))。实际原理就是ICON打成字体,然后通过CSS设置字体的样式来生效。
但是,这是在H5相关开发及其延伸开发时用到的。那么,原生Android开发中,应该怎么使用这些图标呢。下面就给大家介绍一下在Android原生开发中的使用方法。

本方法基于Android Studio工程使用,Eclipse的使用者请自行摸索,主要是assets的位置问题。


首先,准备好一个字体图标文件,一般是ttf字体文件,本人准备的是名叫icon.ttf的文件,部分内容如下图。

图1


接下来,在Android Studio中新建工程,File → New → New Project... ,弹窗中选择”Empty Activity“ → 点击 Next → 输入应用名、包名以及工程位置 → 点击Finish完成。如下图

图2


点击Android Studio左上角‘Android’,切换到Project模式,在 app → src → main 下新建文件夹 assets,这里的位置不要错了,Android就认这个位置。将准备好的图标文件(icon.tty)复制到assets文件夹下。

图3


这样,准备工作就完成了,接下来就是在项目中使用它了。


在使用之前,先叨叨两句。Android的Activity的生成和渲染的速度是非常快的,如果你在Activity中加载并使用字体文件,很可能就会造成这个页面轻微卡顿的现象。解决这个问题的方案就是在应用启动时就去加载这个字体文件,在页面中只是使用它。

下面就介绍在代码中怎么使用它。


首先,新建一个MainApp类,继承自Application,在AndroidManifest.xml中application标签中设置android:name指向刚刚新建的MainApp类,让MainApp代替系统默认的Application类。


然后,在MainApp中,复写onCreate()方法,并在这个方法里加载字体文件,这里要用到Android的Typeface字体类,想让页面都可以用到这个字体,那么还要把字体的实例getter一下。代码如下:

package com.test.testiconfont;

import android.app.Application;
import android.graphics.Typeface;

public class MainApp extends Application {
    
    private Typeface typeface;
    public Typeface getTypeface() {
        return typeface;
    }
    @Override
    public void onCreate() {
        super.onCreate();
        typeface = Typeface.createFromAsset(getAssets(),"icon.ttf");
    }
}

新建空Activity一般都会有一个TextView,内容为“Hello World!”,可以把它利用起来。给这个TextView设置一个Id,如helloWorld,在Java代码中用findViewById将这个View引用起来。然后给它设置字体,并赋值一个字体图标。

在使用字体图标时有一个需要注意的地方,如图1中,星型的值为e915,在Android中这个引用为“”。是的,前后都要加字符,前面加“&#x”,后面加英文分号,这是字体图标的引用值。这个引用不能直接作为字符串使用,需要用Html类转换一下,Activity中完整代码如下:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    TextView helloWorld = findViewById(R.id.helloWorld);
    helloWorld.setTypeface(((MainApp)getApplicationContext()).getTypeface());
    helloWorld.setText(Html.fromHtml(""));
}

运行代码,可以看到,这个图标已经替换了“Hello World!”的内容。

成功!!!(~ ̄▽ ̄)~ 

扩展内容

对于编程习惯良好的人来说,上面的代码并不友好。为什么?有字符串硬编码、设置字体不优雅。优化这两块问题也很简单。

一、字符串硬编码

对于,字符串硬编码,可以在工程的strings.xml中设置,比如:
    <string name="font_icon_stars">&#xe915;</string>
上面对应的设置代码变成了:
    helloWorld.setText(R.string.font_icon_stars);


二、 设置字体

对于设置字体这个,可以自己实现一个TextView的子类,在子类中设置字体,然后在需要用到字体图标的地方使用这个子类即可。

### 回答1: Android Studio界面美化可以通过以下几种方式实现: 1. 更换主题:Android Studio自带多种主题,可以在“File”->“Settings”->“Appearance & Behavior”->“Appearance”进行选择。 2. 安装插件:Android Studio有很多第三方插件可以美化界面,可以在“File”->“Settings”->“Plugins”进行搜索和安装。 3. 自定义布局:可以通过自定义工具栏、侧边栏等方式来美化界面,可以在“View”->“Tool Windows”进行设置。 4. 修改字体大小和颜色:可以在“File”->“Settings”->“Editor”->“Color Scheme”进行设置。 总之,Android Studio界面美化可以根据个人喜好进行自定义,让开发更加舒适和高效。 ### 回答2: Android Studio是一款功能强大的开发工具,但默认的UI界面相对来说比较单调,不太美观。因此,开发者可以通过一些设置和插件来美化Android Studio的界面,让工作更加舒适和高效。 一、设置主题:Android Studio自带几种主题供用户选择,包括经典主题和深色主题,用户可以根据自己的喜好进行选择。打开Android Studio的Settings,点击Appearance & Behavior -> Appearance,就可以在Themes选择主题。 二、修改字体Android Studio的默认字体比较小,用户可以根据自己的习惯修改字体的大小和类型。在Settings点击Editor -> Font就可以轻松修改字体。 三、使用插件:Android Studio提供了丰富的插件,用于修改UI、增强功能等,例如Darcula theme、Material Theme和Rainbow Brackets等,这些插件可以让开发者的经验更加愉悦。 四、自定义工具栏:Android Studio的工具栏可以自定义,用户可以根据自己的习惯将常用的功能添加到工具栏上,方便使用。 五、更换图标Android Studio的默认图标比较单调,用户可以选择自己喜欢的图标进行替换。打开Settings的Appearance & Behavior -> Appearance -> Window Icon就可以更换Android Studio图标。 六、修改配色方案:Android Studio的默认配色方案可能不太适合用户的习惯和喜好,可以通过在Settings点击Editor -> Color Scheme来进行修改,也可以通过插件来实现。 总之,Android Studio的界面美化可以让用户的使用更加舒适和高效,可以让开发者减轻开发时的压力。因此,开发者可以根据自己的需要进行设置和修改,让Android Studio变得更加好看和好用。 ### 回答3: Android Studio是Google开发的一款强大的Android开发工具,是当前Android应用开发领域应用最广泛的工具之一。但是,许多人可能会认为Android Studio的默认界面比较丑陋,需要进行美化。在这里,我将分享一些方法来增强Android Studio的用户界面美感。 1. 使用主题插件:Android Studio可以使用许多主题插件来改变界面外观。例如,Material Theme UI、Darcula、Nord等主题插件可以为Android Studio添加不同的风格。 2. 使用图标插件:Android Studio默认的图标可能会使界面看起来有些沉闷。因此,安装图标插件可能是一个不错的选择。例如,Material Icons、Glyphs等插件会增强Android Studio的用户界面。 3. 自定义配色方案:可以通过修改配色方案来改进Android Studio的用户界面。例如,您可以选择更亮或更暗的颜色,以及不同的背景和文本颜色。此外,您可以自定义代码块、注释、字符串等元素的颜色。 4. 安装字体:将安装新字体添加到Android Studio可以改变文本样式,并使代码更易于阅读。例如,您可以尝试使用Fira Code、Roboto Mono等字体。 5. 添加插件:Android Studio支持第三方插件,可以增强其功能并使其更具吸引力。例如,Rainbow Brackets等插件可以增强代码块的可读性。 总的来说,美化Android Studio界面需要花费一些努力,但它可以让您的编程环境更加舒适和有吸引力。通过上述步骤可以使Android Studio变得更美观和易用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值