美文网首页iOS精英班iOS 控件封装Tools
「LYIconfont」快捷设置iconfont的工具类

「LYIconfont」快捷设置iconfont的工具类

作者: halohily | 来源:发表于2017-08-04 22:21 被阅读594次

在刚刚接触iOS开发的时候,每次涉及到图标按钮等绘制工作时,都觉得无比繁琐。因为我们需要将尺寸合适图片格式的素材加入到项目中,设置一系列冗杂的UIImageView相关设置。当然,如果需要在不同分辨率下显示,我们还需为一个图标准备多个不同分辨率的素材。当你的设计改变,仅仅想要将一个小图标的颜色进行替换时,就不得不重新制作图片素材,并在项目中进行替换

你看到了,加粗的关键词都是我对这种开发模式的吐槽。

在之前的文章里,我就已经向大家强烈安利过iconfont,今天终于可以为它单独写一篇文章。

iconfont简介

到如今,我们拥有了iconfont技术,在前端、客户端等领域都被广泛使用。简单来说,就是它将图标素材转换为矢量字体文件的形式在界面中进行展示。

如你所见,它是矢量素材,我们不需要为了不同分辨率下分别进行设置,像你的UILabel中的文字一样,它是一直高清的。

同时,它是一种字体,所以当你想要更换颜色时,只需要像更换UILabel颜色一样,对它的颜色进行代码设置

当然,更重要的是,你不再需要图片格式的素材,客户端的体积和性能表现也会有相应提升。

在这里,向大家强烈推荐阿里巴巴的iconfont图标库

LYIconfont介绍

当然,在iconfont的使用过程中,我也遇到了一些令人懊恼的问题。比如,要想使用一个iconfont形式的图标,我需要编写一大堆繁琐的代码,如你所见:

UIButton *reLocate = [[UIButton alloc] initWithFrame:CGRectMake(DEAppWidth - 90, 15, 80, 15)];
[reLocate setTitle:@"\U0000e8a4 重新定位" forState:UIControlStateNormal];
[reLocate setTitleColor:DEColor(26, 152, 252) forState:UIControlStateNormal];
reLocate.titleLabel.font = [UIFont fontWithName:@"iconfont" size:15.0];
reLocate.contentHorizontalAlignment = NSTextAlignmentRight;

这是对一个UIButton形式的iconfont图标进行设置所需的代码量。

所以我对诸如此类的设置代码进行了封装,以方便阿里巴巴图标库iconfont形式素材的使用。

这里是项目地址。如果它对你有帮助,希望点一个star~

使用方式

  • 项目中引入LYIconfont.hLYIconfont.m文件
  • 在需要设置iconfont图标的文件中引入LYIconfont.h头文件

调用方式:

  • 获取一个UIButton类型的图标:
UIButton *iconfontBtn = [LYIconfont LYIconfontButtonWithFrame:frame code:@"\U0000e6e9" color:someColor size:25.0];
  • 获取一个UILabel类型的图标:
UILabel *iconfontLabel = [LYIconfont LYIconfontLabelWithFrame:frame code:@"\U0000e6e9" color:someColor size:25.0];

参数解析:

  • frame

你的按钮或标签形式的图标frame

  • code

你的图标素材编码

  • color

你的图标颜色

  • size

你的图标尺寸

相关文章

网友评论

  • 瑞廷:xib 怎么使用?
  • 7a45b5f6be54:一切都弄好了,但是就是不显示图标呀??
    7a45b5f6be54:昨天下午弄好了,原来是还需要copy 到bundle resource 里面
    halohily:@相_c0f8 你可以看下你的iconfont文件相关设置都ok了吗~有个要注意的点就是link文件的设置那里需要把iconfont字体文件添加进去
  • 371429183029:大神 请教一下 我怎么才能获取图的code呢 比如上面的的例子里面 code:@"\U0000e6e9"
    死神一护:@halohily 网站上没有看到图标对应的code啊,简书不能截图。。。不知道大大能否给详细说下在哪里看到的code
    halohily:@月影九重 首先你需要登录阿里巴巴的iconfont网站,在网站的图标库里选择你需要的图标,加入到一个自己建的项目中,然后下载字体文件加入你的iOS项目,在网站上你可以看到图标对应的code,都是免费的
  • 油菜花花花花:老大加油吧,多谢这样的好东西,我大晚上还坚持学习呢。:joy::joy::joy:

本文标题:「LYIconfont」快捷设置iconfont的工具类

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