美文网首页
Android 阿里图标字体库

Android 阿里图标字体库

作者: 坑逼的严 | 来源:发表于2021-09-26 14:31 被阅读0次

    阿里图标库:https://www.iconfont.cn/
    自己开发app时喜欢用的一个图库,经常在上面找一些图片,最近又发现了他一个不得了的功能,不喜勿喷,我也是才知道的。那就是把自己喜欢的图片收藏到自己的项目中,然后下载到本地,会有一个字体库,然后可以通过字体库像加载Text文字一样加载图标,大大的减少了项目中图标数量和占用大小了。
    使用:

    进入官网:

    要登录,可以选择github方式,程序员都有的。随便找一个需要的图标


    image.png

    然后收藏他


    image.png
    添加到自己的项目中,没有的可以新建,记住自己用到的需要自己统一放到一个项目,不然后面会加载不出来。
    image.png
    image.png

    添加完毕后会自动跳到你的项目栏下,这个时候我们点击下载到本地


    image.png
    下载完毕后就有字体库了。把它放入assets目录下
    image.png
    打开demo_index.html文件可以看到这一版本的字体库中,我们拥有的图标列表以及它对应的代码。然后就是封装textview了

    自定义Textview

    public class IconFontTextView extends AppCompatTextView {
    
    
        public IconFontTextView(Context context) {
            this(context, null);
        }
    
        public IconFontTextView(Context context, AttributeSet attrs) {
            this(context, attrs, 0);
        }
    
        public IconFontTextView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
            initView(context, attrs);
        }
    
        void initView(Context context, AttributeSet attrs) {
            TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.IconFontTextView);
            String path = ta.getString(R.styleable.IconFontTextView_font_path);
            ta.recycle();
            Typeface tf;
            if (TextUtils.isEmpty(path)) {
                tf = Typeface.createFromAsset(getContext().getAssets(), "iconfont.ttf");
            } else {
                tf = Typeface.createFromAsset(getContext().getAssets(), path);
            }
            setTypeface(tf);
            setIncludeFontPadding(false);
        }
    
    }
    

    然后布局里面使用,android:textColor可以控制图标的颜色,这里设置为蓝色。

    <com.example.demo.icon_font.IconFontTextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/car"
            android:textColor="@android:color/holo_blue_light"
            android:gravity="center"
            android:textSize="28sp"/>
    

    效果图:


    Screenshot_20210926_142824_com.example.demo.jpg

    缺点

    每次加个图标就要重新换一遍字体库,很累。

    相关文章

      网友评论

          本文标题:Android 阿里图标字体库

          本文链接:https://www.haomeiwen.com/subject/ixcggltx.html