在原生Android应用程序中使用字体图标是一种不好的做法吗?

Ali*_*dar 4 android font-awesome

我将在我的原生Android应用程序中使用字体图标而不是png.我找不到任何建议使用或不使用字体图标.

那么在本机Android应用程序中使用字体图标是一种不好的做法还是一个好的做法?

(原生我的意思是我不使用webview作为用户界面)

Kon*_*nov 6

与世界上任何其他实践一样,它有自己的优点缺点.

优点:

  • 改变图标的​​颜色变得非常容易修复
  • 因为字体图标是SVG,所以它们在没有视觉假象的情况下进行缩放(与缩放小的.png相比)
  • icon-font占用的空间少于存储为.png的相同数量的图标

缺点:

  • 它非常不灵活,除非您可以自己编辑字体并添加新元素.
  • 它不可读:

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="\uE118"/>
    
    Run Code Online (Sandbox Code Playgroud)

    \uE118 和其他unicodes只是你可以保留在记忆中的东西

  • 在使用图标的任何地方,您都被迫使用自定义字体,从而导致意大利面条代码:

    • 所有TextView都应该有id
    • 你在代码隐藏中的每个地方都设置了字体

      (或者,正如我所做的那样,TextView根据你在xml中传递的自定义字符串属性(使用字体路径)扩展类和设置字体)

  • 你会惊讶的是,为你生成字体的人多久会改变图标的​​代码.因此,您可以获得非常奇怪的效果

我个人观察:
png更适合原型制作,快速构建东西; 一旦您从设计角度应用开发生产质量,稳定,icon-fonts就更好了.