Skip to content

31AppIcon制作:如何使用Figma快速制作AppIcon?

与后台开发者的要求不一样,iOS 开发者不仅要保证程序逻辑的正确性,而且要注重用户的使用体验。为了给用户带来良好的使用体验,我们需要提升自身的设计能力。那该怎么来提高呢?阅读优秀的开源代码是提升编码能力的有效办法。相应地,学习和模仿优秀设计也是提高设计能力的重要途径。在这一讲中,我会以制作 Moments App 图标(Icon)为例子,讲解如何使用 Figma 进行设计。

目前流行的设计工具主要有 PhotoShop、Adobe XD、Sketch 和 Figma 等,这些工具各有优缺点。而我选择最近一两年特别流行的 Figma,其主要原因有如下。

  1. Figma 能运行在主流的浏览器上,可以在 Mac、Windows、Linux 甚至 Chromebook 下使用,而 Sketch 等一些工具只能在 Mac 上运行。

  2. Figma 把所有的设计稿都自动保存在云端,我们可以在任何能连接网络的机器上访问设计稿,无须任何额外的工具和平台来管理设计文件。

  3. Figma 提供给个人免费使用,而且不限制文件的数量、云存储的空间,以及预览者和评论者人数等。而其他工具一般都需要收取一定费用,比如,PhotoShop 就收费不菲。

  4. Figma 支持多人同时预览、修改和评论同一份设计稿,方便大家在线实时协作,我们可以在设计稿上通过人像实时看到其他同事的操作和留言。

  5. Figma 自带版本管理功能,方便我们查看所有人的历史修改记录。

  6. Figma 支持按权限级别的方式进行分享,例如设计师可以有修改权限,而产品经理和开发者只具有评论权限。

  7. Figma 能生成 Web、iOS 和 Android 的 UI 代码,方便我们把设计稿转换为代码。

  8. Figma 支持以 Components(组件)的方式来封装常用的 UI 组件,方便我们把常用组件共享到多个设计稿里面。

  9. Figma 为第三方开发者提供了丰富的 API,方便社区开发插件,因此 Figma 具有很多实用的第三方插件来简化我们的设计工作。

  10. Figma 支持原型设计功能(Prototyping),这样能帮助我们设计页面之间的交互、换场和导航。

  11. Figma 还提供在线预览和演示功能,方便设计师与产品经理、开发者进行实时沟通。

总之,Figma 的功能齐全而且丰富,只需要一个工具就能完成几乎所有的设计工作,不像以前那样,我们需要使用 Sketch 来编辑设计稿,还需要使用 InVision 来共享设计稿,并使用 Marvel 来预览原型等。因此,我非常推荐你使用 Figma,对于个人开发者而言,免费版的功能已经足够满足各个需求了。

Figma 工具概括

那下面我们就一起看看如何使用 Figma 来设计 Moments App 的图标吧。

首先,我们需要在浏览器上登录到 figma.com 网站并免费注册一个账号,然后就会看到 Figma 的主界面,如下图所示:

左边区域是功能菜单,而右边区域是当前选中菜单的详情页面。当我们要开发一个设计稿的时候,第一件事往往是寻找有没有类似模板可以参考。Figma Community 为我们提供了大量的设计模板,可以点击左边的 Community 菜单来打开以下的 Figma 社区页面。

由于我们要做 App 的图标,因此,可以在搜索框输入"App Icon Template"关键字来搜索 App 图标的模板,结果如下:

在实际工作中,我们可以打开多个文件模块进行尝试与比较,并选择自己喜欢的模板。在今天这个例子中,我们选择了图上的"iOS App Icon Template"模板。只需要点击"向下箭头"按钮就能把该模板复制到我们的初稿文件夹里面,复制完毕后会显示下面的提示,翻译成中文就是"文件已经复制到你的初稿里面了"。

点击提示框的"View"按钮就能打开复制的设计稿,如下图所示:

这就是我们的工具页面,最上面的黑色部分是菜单栏,我们可以点击左上角的 Figma 图标来打开 Figma 程序的菜单,而 Figma 图标右边就是我们常用的操作,例如添加形状、文本和绘画工具等。

左边区域是设计稿的图层关系组织图,它把当前的页面、图层分组和图层通过树状的方式呈现出来,方便我们快速地定位所需要浏览和编辑的设计元素。

中间区域是主编辑区域,我们的设计工作就在里面完成,例如添加和修改形状、文本等设计元素,改变图层的顺序,移动元素的位置,等等。

右边区域可称为属性配置页,它会根据我们当前选中的设计元素而动态改变,方便我们编辑选中元素的属性。例如,在下图中,当我们选中一个圆形的时候,属性配置页会显示该圆形的位置、约束和填充色等信息,我们可以通过修改这些属性来改变该圆形的设计。

对 Figma 工具有一个概括性的了解以后,下一步我们再来看看如何使用"iOS App Icon Template"模板。

我们需要先详细阅读模板的描述信息,这个模板的描述信息非常简单,如下图所示:

简单来说,我们需要在名为"icon-ios"的图层里面根据自己的需要设计和编辑 App 的图标,然后把图标的约束(Constraints)设置为"Scale",最后再把设计好的图标按照图上的各种尺寸进行导出。

图标设计

现在我们就可以开始设计和编辑图标了。为了加快设计的速度,我们可以参考微信朋友圈的图标,该图标可以到微信开放平台的官方文档里找到,如下图所示:

接着我们就可以下载微信朋友圈图标,并把它放到设计稿里面,如下图所示:

1. 绘制图标

要学习如何绘制一个图标,第一步可以把该图标里面的元素进行拆分。我们可以看到,该图标的外层是一个圆形,中心部分是一个八边形,中间是八块形状一样但颜色不同的圆边三角形。

拆分完毕以后,我们就可以从外部的圆形和中心的八边形开始进行编辑。在"icon-ios"图层里面,我们先把不需要的内圆删除掉,然后点击下图的"Polygon"菜单来添加一个多边形,为了生成等边的多边形,我们需要在拖放该多边形的时候按着 Shift 键。

然后在右边的属性配置页中选择长和高都为 20,角度为 22.5 度,边数为 8,这样就能生成一个如下图所示的八边形来。不过需要注意,我们要把这个八边形布局到圆形的中心上,操作也十分简单,只需要点击和拖动即可。

接着就可以画一个长方形了,我们可以在菜单里面点击 Rectangle,或者使用快捷键 R 来画,如下图所示:

下一步是复制八条形状一样的长方形,并旋转它们的布局角度。由于 Figma 没有自带的 Sketch 里面的 Rotate Copies(旋转复制)功能,所以我们需要下载一个插件。那怎么寻找和下载第三方插件呢?我们可以点击 Figma -> Plugins -> Browse plugins in Community 菜单来打开社区插件库网页。

然后输入"Rotate Copies"关键字进行搜索,并点击"Install"按钮进行安装,如下图所示:

插件安装完毕以后,我们右键图层就能看到如下图所示的插件菜单了。

当我们选择"Rotate Copies"菜单时,Figma 就会弹出下图的弹出框。

该弹出框显示了该插件所需的配置信息,我们可以修改这些配置信息来生成不同的效果。在我们的例子中,我们在"Number of copies"输入框里填入 4,然后点击"Rotate"按钮,这样就能复制 4 条不同角度的长条。由于我们需要 8 条长条,所以还需要再点击一次"Rotate"按钮。

然后把这 8 条长条分别移动到中心八边形的边上,如下图所示:

现在可以删掉中心八边形以及用于辅助布局的十字形状,生成的效果如下图所示:

再下一步就是把这 8 条长条合并到同一个图层里面,我们可以在左边区域的图层树上同时选中这 8 条长条,然后右键打开菜单,如下图所示:

选中 Flatten 菜单项就能合成一个名叫"Vector"的图层了。假如你能熟练使用 Figma,也可以直接通过"Command + E 键"来完成这个合并操作。

2. 布尔操作

有了圆形和 8 条长条以后,怎样才能生成八个圆边三角形呢?这里需要使用到 Boolean Operations(布尔操作)。那什么是布尔操作呢?布尔操作是把任意数量的形状图层通过 Union(并集)、Subtract(减集)、Intersect(交集)或者 Exclude(差集)方式进行合并。 为了方便你理解,我就通过下面的图来演示它们的效果:

图最上面展示的是操作前 A 和 B 图层,下面是分别使用四种不同的方式进行布尔操作合并的结果。

  • Union 会把两个图层合并在同一个图层,重复部分的轮廓线会被抹掉,只保留外部的轮廓线。

  • Subtract 和 Union 相反,该操作需要制定基础图层。由于 A 是基础图层,Subtract 操作会从 A 图层去掉 B 图层部分,并只保留基础图层中没有被覆盖的部分。

  • Intersect 只保留两个图层的重复部分。

  • Exclude 和 Intersect 相反,会把重复部分去掉,只保留不重复的部分。

合理使用这四个布尔操作能帮助我们绘制各种效果的图标,比如,现如今流行的 App 图标,其中绝大部分图标都可以通过图层间的布尔操作来制作。

下面我们就一起看看如何使用布尔操作来制作八个圆边三角形。首先需要同时选中"Vector"(八条边的合并图)和"Ellipse"(圆形)两个图层,然后点击下图的"Subtract Selection"菜单。

这样就能生成如下图所示的八个圆边三角形了。

3. 分离图层

因为布尔操作会把多个图层合并成单独一个图层,所以我们没有办法为各个圆边三角形分别添加不同的颜色。那怎么办呢?我告诉你一个小技巧:首先把图层先通过 Flatten 进行合并,然后导出成 SVG 文件,再把 SVG 文件拖进设计稿进行编辑。

前面已经讲过,我们可以通过"Command + E 键"来合并成如下图的"Subtract"的图层。导出 SVG 的操作也非常简单,先选择需要导出的图层,再打开右边的 Export 配置,最后把导出的文件格式修改为 SVG,并点击"Export Subtract"按钮即可。

现在就可以在"icon-ios"里把原有的"Subtract"图层删除掉,并把导出的 SVG 文件拖进里面。如下图所示,你看到一个名叫"Exported Subtract"的新图层。

当我们设计完一个图标以后,通常会使用到 Home Screen、App Store 和 Push Notification 等不同的地方,各个地方图标的尺寸各不相同,为了能正确地导出各种尺寸的图标,我们必须在属性配置页上把 Constraints 设置为 Scale。这一步非常重要,初次使用 Figma 常常容易忽略这一细节。

接着可以删掉不需要的图层,如下图所示,我们可以展开"Exported Subtract"图层并选中第一、第二个图层。

把它们删掉后,就只保留了八个圆边三角形,如下图所示:

4. 填充颜色

最后一步是为各个圆边三角形分别填充颜色。填充颜色的操作非常简单,先选择其中一个圆边三角形,然后点击 Control + C 把鼠标变成取色器,接着再把取色器移动到右边的图就能撷取各块的颜色了,如下图所示:

就这样,八个圆边三角形填充完毕以后效果如下:

同时,我们还可以看到该图标应用到不同地方的效果,如下图所示:

5. 导出图标

接着就可以导出图标了,选择"icon-ios"图层并点击"Export icon-ios"按钮,如下图所示:

最后一步就是把图标导入 Xcode 里面,只需把所有的 PNG 文件拖到 Xcode 的 AppIcons 下就完成了。

总结

在这一讲,我们介绍了如何使用 Figma 来绘制一个 Moments App 的图标。其中,我们重点讲解了如何寻找模板、怎样安装插件以及如何使用布尔操作来合并多个图层。

如果你刚入门 App 设计,我建议你从模仿图标的制作入手,把流行的 App 图标下载下来,思考如何把图标拆解成基本图形,例如圆形和多边形等,然后通过布尔操作把多个图形组合成新图层,并填充颜色。一旦能熟练设计图标,页面的设计就变得相对简单了。学习页面设计的方法和图标设计类似,可以通过学习流行的 App 以及 Dribbble 上的热门设计来不断提高。当你掌握这些后,还可以系统地学习字体、颜色、间距、对比度、布局、信息架构等内容。

在设计工具的选择上,Figma 简单易用,功能齐全,而且支持团队协作,我非常建议你多花一点时间学习与研究,这会很好地帮助你与设计师进行沟通和交流。

思考题

今天留给你一个操作题:请使用 Figma 绘制一个微信 App 的图标。

可以把你的设计稿发到留言区哦。下一讲我将介绍如何使用 SwiftUI 快速替换原有 UI 层,记得按时来听课。

源码地址

App 图标设计稿地址:https://www.figma.com/file/Zn86wXELmljrYKZKu95uKf/iOS-App-Icon-Template-Community?node-id=1%3A55