美文网首页iOS学习笔记
使用 iconfont 替换 Assets 里的图标资源

使用 iconfont 替换 Assets 里的图标资源

作者: 这个汤圆没有馅 | 来源:发表于2019-03-21 11:10 被阅读6次

我们一般对 App 的体积大小会有一定的要求,一般会先从图标资源着手。这边推荐两个压缩图标的网站,不会影响画质,也不会变形或模糊。

不过今天主要介绍的是iconfont,像使用字体一样的使用图标。

先在 阿里巴巴矢量图标库 注册账号,再按照下图的步骤将 UI 设计好的图标下载到本地。
下载完以后,我们会发现文件夹里包含如下图文件。我们只需要将iconfont.tff拖入工程中即可。
为了保证 iconfont.tff 已导入成功,在Target--Build Phases--Bundle Resource 里检查一下。
打开info.plist文件,添加Fonts provided by application字段。
如图一,每个图标都会对应一个unicode码和名称。 这些代码是&#xXXXX格式的,但是在Xcode中需要转换成\U0000XXXX格式的。
把之前项目里的 iconfont 文件整理了一下,iconfont封装 可直接下载使用。所有的图标都是用字体来代替,如下。
#define IconfontName(name)  [IconFont iconFontUnicodeWithName:(name)]
#define IconFontSize(value) [IconFont iconFontWithSize:(value)]

UILabel *label = [[UILabel alloc] init];
label.text = IconfontName(@"mine_logout");
label.font = IconFontSize(64);
label.textColor = [UIColor grayColor];
label.textAlignment = NSTextAlignmentCenter;

// 如果是设置 button 的图标
[btn setTitle:IconfontName(@"chat_voice_normal") forState:(UIControlStateNormal)];
[btn setTitle:IconfontName(@"chat_voice_pressed") forState:(UIControlStateSelected)];

如果后期图标有更新,只要替换最新的iconfont.tff文件即可。

相关文章

网友评论

    本文标题:使用 iconfont 替换 Assets 里的图标资源

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