提交需求
赛事与广告咨询合作,请填写需求表单,我们会在第一时间与您联系!
APP设计中最苦恼的一个问题可能就是要为多个平台设计两套大部分相似又局部不同的视觉稿,进而又需要两份标注稿,别忘记还有两套图片资源,为什么不能一套视觉稿搞定呢?
本文适合APP产品的视觉设计师、开发工程师、项目经理及Sketch爱好者阅读。
APP设计中最苦恼的一个问题可能就是要为iOS和Android平台(WP同学已哭晕在厕所)设计两套大部分相似又局部不同的视觉稿,进而又需要两份标注稿,别忘记还有两套图片资源。可是大量的人力与时间成本可能花在这种近似重复的工作上,而项目工期逼人,于是我们会很自然地想:
为什么我们以前没有这样做?
先来看一下,以前我们是这样的,传统上,我们是用Photoshop来设计APP,作为一个伟大的软件,它却在阻止我们上面的想法:
(本文写于CC 2015发布前,2015版已经改进支持了多画布)
现在我们借助Sketch,可以完美解决PS这几个弊端:
所以,在PS时代不是我们不想用一套视觉稿来完成多平台的需求,而是PS本身无法满足APP设计需要的灵活、快速、多变的需要,毕竟它是一个面向平面、网页、摄影等多个行业的巨无霸软件,它的定位决定它不是从UI设计这一个方面来考虑功能。实际上我们做APP设计中,大部分PS的功能是冗余的,而Sketch是应UI设计特别是移动端UI设计而生。
在最近的项目中,我们已经尝试了使用Sketch设计一份视觉稿,同时满足两个平台的开发需要。在与产品、开发充分沟通后,我们商定出了认为可行的流程和规范,并在实际应用过程中不断修正,最后还算顺利地走完了整个项目开发。从设计模式(原本两个平台各配一个视觉设计师做两份稿,改为一个设计师完成一份稿)、设计响应速度(灵活快速地对整个APP进行修改)、开发资源输出(一键、易维护)这三个方面,成功缩短了工期,降低了项目成本。
下面就介绍一下我们的实施过程,因没有现成经验,完全属于在摸索中前行,欢迎斧正,特别是有经验的团队不吝指教。
设计:Mac + Sketch + Sketch Plugins
Sketch只有Mac版本,所以你还需要配备Mac系统的电脑,另外为了高效工作需要安装几款Sketch插件,具体插件后面将提到。
开发:单位换算函数 + svn
iOS开发需要一个简单的将基于720px宽分辨率下的标注数值转换到@1x下值的换算函数;为了在视觉和开发团队之间方便的同步切图资源,最好能搭建一个SVN服务器。
基本思路:以Android xhdpi 720x1280尺寸为设计稿基准,两个平台只设计一份视觉稿。将平台特性部分抽离(如Tab bar、Nav bar)为独立部分单独设计,主体区域共用同一份视觉稿和标注稿。iOS开发根据标注中的数值转换后使用。
将符合平台特性的部分单独拿出来定义它们的视觉规范,比如APP Bar、按钮、输入框等,可以集中起来为它们单独输出一份视觉与标注稿,供两个平台的开发查阅。
上图:Android平台视觉规范(局部)示例
注意只需要将全局性的模块抽离独立出来,而以后要输出资源图标,如分享图标,可以在切图环节处理。
这个环节不用多说,注意所有元素的尺寸必须为偶数。在我们的项目中,尽量采用了Material Design以8dp为最小单位的栅格法则,即设计稿中为16px的偶数。
额外提一下Sketch很好用的演示模式(快捷键commond + .),可方便地在电脑上演示设计稿。
标注终于可以在软件内直接完成了,只需要安装一个插件:Sketch Measure。不用再在MarkMan之类的第三方软件之间来回切换,而且更高效好用。
开发如何使用标注稿:
Android开发:直接将标注数值除以2即为DP值;
iOS开发:需要将标注数值除以2.25后取整,则为1x下的值。建议写一个小换算函数,这样开发可以直接填写标注稿上的数值。
Sketch本身提供方便的图片输出功能,支持PNGJGPTIFFPDFSVGEPS多种格式,以及自定尺寸、文件名。
但为了更方便地集中管理全部图片资源,以及有的时候需要按平台设计不同图标,我们使用了更强大好用的插件来输出。我们用的是Sketch Better Android Export和Sketch Export Assets这两个插件分别用于Android和iOS两个平台的切图输出。
在实际项目中,我们单独建立了iOS Assets和Android Assets两个page中作为这两 个平台的UI库,在page下再按切图分类建立一个个Artboard,APP需要用到的切图会集中放在这个page中。再把切图转换为Symbol(共享符号)后,才放置到需要用到的某一界面中。
当然有的时候这个过程是相反的,先在界面中画好,再转为Symbol放到UI库中。
这样做的好处是便于管理整个APP内的切图,一是更好把握整体图标风格,二是修改维护方便,在UI库中调整一个图标,实时就同步到用到它的所有界面了。
输出时在UI库全选,再按下插件快捷键就搞定了。
要点:
移动稿一定要在移动设备上检验效果。Sketch Mirror是Sketch配套的一个手机端预览APP,作用与Ps Play之于PS相同,但不用设置,还可以在手机APP中切换查看所有界面,APP Store售价4.99刀。
用来与开发同步切图资源,SVN工具选择很多,mac下推荐Cornerstone。要注意修改过的图片提交时做好备注说明以便于开发的同学理解。
http://note.youdao.com/groupintro.html
网易开发的一个全平台团队协作工具,我们项目在这个平台上对一些文档包括视觉稿进行讨论、管理和共享。
Sketch现在并不支持PSD格式,所以迁移还是有一定成本。如果你原有项目是在PS上做的设计,中途想要迁移的话,首先完整界面需要在Sketch中重绘,但PSD中的矢量图形是有办法转移过来的(位图就没招了):
在PS中画的形状,放狗搜索“photoshop export svg”可以找到几钟方法将形状导出为SVG,虽然繁琐一点但是可以实现;
如果原来是用AI画的图标就比较省事了,可以在AI中直接导出为SVG。
拷贝SVG然后在Sketch中粘贴就可以导入进来。
都说要一稿走天下了,iOS或Android无所谓了吧,任性选。非要理由的话我可以说Android机占有率高一点吗?还有一点,720除以320(iOS的@1x)等于2.25,但如果是640(iOS的@2x)除以720等于0.8888888...除不尽啊!
对Android开发来说,720x1280下可以简单地将标注中的数值以2px=1dp来换算,而没有选用更小或更大的尺寸,只是因为这个大小更接近我们设计师自己手机的分辨率,更适合设计师在手机上预览真实效果。
确实还有一种方案是直接提供给开发SVG或PDF这种矢量格式的资源,但这种方式要 额外消耗手机的计算资源,特别是在界面跳转时有转场动效果的情况下,所以被我们 的开发否决了。
为了方便管理。在我的项目中对iOS和Android绘制了不同的图标,如果你的设计中图 标没有区分两个平台,用Sketch Export Assets同时输出两个平台的图就行了。
下载这个第三方的插件管理器SketchToolbox,可以查找、安装所有插件。
大牛,别默默的看了,快登录帮我点评一下吧!:)
登录 立即注册