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

我们一般对 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文件即可。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容