双管齐下:同时设计 iOS 和 Android

不管你是在家,在公司,还是在设计师工作室工作,互联网企业都会找你去给他们设计 App。为了满足所有顾客的需要,这些企业通常需要同时开发运行在 Android 和 iOS 设备上的 App。
在理想的情况下,我们希望能花上好几个月的时间来分别为两类设备设计一款 App,但是实际上,我们没那么多的时间。就我所负责的项目而言,每次的时间都仅够我设计一个 App。通常情况下,我们也都只设计一个 App,然后在交给 iOS 和 Android 开发团队之前将它们做一些微调。要按照这种方式进行 App 设计,首先我们应当预先了解这两个平台之间的差异,这样你才能够使得你设计的 App 在这两个平台上的外观都能显得自然。

在设计开始之前

1. 了解另外一种系统

你很可能有自己更加喜欢的一个系统,像我一直使用 iPhone,所以我可能对 iOS 上的 UI 样式有更多的了解。在进行跨平台设计的时候,你应当首先去做的一件事是了解另外一个系统,当然最好的方式去新买一只手机,对于我来说,就是 Android 设备。

2. 选择一个优先的平台

由于我们一次要对两个平台进行设计,在时间有限的情况下,你需要接受的一个事实就是——必须有一个平台需要优先设计。如何选择优先的平台并不在于你的个人喜好,而是在于你设计的这款 app 的市场定位如何。你所处的环境中有更多人使用 Android 设备吗?它是收费 App 吗?你的目标受众是谁?问问自己这些问题有利于你决定哪一个平台应当是被优先满足的。

3. 了解设计规范

阅读 iOSAndroid 的设计规范。在过去,iOS 被认为有着更加严格的设计规范,有时候为了让 App 能够上线 AppStore,你需要走一个大约两周长的流程。而在 Play store 里则不存在这样的审批流程。然而,恰恰由于 App 上线如此开放,Android 平台上的 App 质量一直因为良莠不齐而饱受诟病,Google 为此推出了 Material Design 来试图解决这个问题。

material

对于 Web 设计者而言,他们早就熟悉了 MD 了

 

网上有很多免费而且好用的 UI kit,你可以将它们用在你的项目中,你可以在这片文章的最后找到一些 kit 资源的下载链接,使用这些组件将会给你的 App 带来一些原生的感觉。但是即使你使用了这些 UI kit,想要了解“什么时候应当做出区别以及什么时候两个平台应当保持一致”还是需要一些技巧的。在这里,我将向你分享一些我的经验。

设计你的 App

遵循这些步骤,你的 App 就能同时在 iOS 和 Android 保持完美!

1. 总体的样式

从 iOS7 以后,Apple 就一直在采用扁平化的设计模式,去除了所有不必要的纹理和阴影等效果——和早些年间的版本完全不同。Google 的新 MD 设计规范有了一些更加细节的规定,通过一种叫“纸片”的方法来创造更多的层级关系。

2. 实体按钮

Android 有一个返回按钮,点击它可以返回上一个屏幕。

back

iPhone 上则没有这样一个按钮,所以需要有一种方式能够让用户回到先前的屏幕。通常的解决方案是在屏幕的左上角放置一个返回键。

3. 通用元素

两种平台之间的确存在着一些通用的元素,比如说状态栏和标题栏,它们会出现在每一屏的顶部。你不应当改变导航栏的高度,如果你想让 App 看起来更加原生的话。所以,我推荐你在设计的第一页就定义好标题栏的样式,然后在其他的屏幕上使用一个占位的方框来替代,这样能省下不少时间,但是你应当向程序员说明标题栏在不同的屏幕上都是一样的样式。

不同平台上的导航栏有一定的差别。在 Android 上文本是左对齐的,然而 iOS 上是居中对齐的。在 iOS 上,很多企业都用它们的 logo 来替换首页标题栏中的文字,但是在 Android 设备上这不是一个好的主意。状态栏(显示你的网络、电量和时间信息)是系统组件,你不需要考虑设计它,只要确保它们不会对他人造成误解就好了。

global-elements

4. 导航

或许iOS 和 Android 平台之间最大的区别就在于他们的导航样式了。Android 上最主要的导航方式是抽屉菜单,Android 用户们通常在这个菜单内进行跳转。而且在整个 App 中,这种体验是一贯的。Apple 的导航样式更倾向于 tab bar,它位于屏幕的底部,并且以一种很简单的方式实现上部内容的切换。当你设计 App 的结构的时候,你可以为不同的平台设计不同的导航样式。

navigation

5. 要不要用卡片式?

在 UI 设计中,卡片正逐渐成为一种主要的 UI 设计样式,它们可以应付多种情况,而且给用户提供了一种能够呈现有效内容的便捷方式。视觉上,卡片非常适应于 Android 的 Material Design(它事实上源自于纸张的灵感)。使用阴影和卡片之间的合理间距能够创建一种自然的外观。

在 iOS 上,使用卡片设计需要更加的小心谨慎,尽管一些大型的 App,诸如 Facebook 和 pinterest 的确使用了一种略微偏离 iOS 视觉规范的设计风格。Instagram 使用了一种完全扁平化的设计风格,尽管从结构的观点上看,用户的每一条推送都能被视为是一张卡片,instagram 的设计很值得你去花时间揣摩,它是如何遵循 iOS 视觉规范的。如果你要在 iOS 平台上应用阴影,你最好小心谨慎,尽量使得这些阴影不是那么的明显。

card

6. 排版

iOS 系统上的默认字体是 Helvetica Neue,在 Android 上则是 Roboto。尽管这两种字体在外观上有显著的差异,但是这两个字体的尺寸却是近乎相同的。如果你想要在设计的时候节省时间,那么用一款字体就可以,但是要和开发人员沟通在不同的平台上使用对应的字体。而在设计重要的布局结构和使用大号字体时,我建议你还是同时用这两种字体测试效果。

如果你想要精益求精,那么你就要对不同平台上的设计规范更加注意。比如如下几条:

  • Android 的 MD 设计需要用到更多的空格来进行布局
  • 在 MD 中字体大小的变化会更加多样
  • 在 iOS 上,字体没那么多大小差异,但是在字体重量上(Font weight)有更多的变化,同样允许你创建主次结构
  • 两个平台都使用比较细的字体来现实正文内容,然而,在下面的例子中,Android 使用了轻(Lighr)和常规(Regular)字体,而 iOS 使用了粗体(Bold)和常规字体

这是一个非常简单的例子,向你展示了排版方面的一些细微的不同可以导致印象上的巨大差异——你能很快分辨你是在用 Android 手机还是在用 iPhone!

global-elements1

7. 网格和触摸元件

iOS(@1x 下 44px)和 Android(1:1 比率下 48p)都有对可触摸元件的设计规范。MD 规范同样建议对所有元素使用 8dp 网格对齐。

在最近的项目上,我发现遵守 Android 的这些设计规范会更加安全,因为大一些的 48px 的按钮在两个平台上都表现良好,而且 MD 的规范更加全面,还经常更新。不管怎么说,你都应该在设计中使用网格,但是我们发现定义更加明确的 Android 网格会更好用一些。

8. 按钮样式

这里是 MD 下定义的几个按钮类型:

  1. 浮动动作按钮(Floating action buttons):最传统的有边框的按钮,阴影厚重明显,将它们从页面上分离出来。它们仅应当被用于背景,或者谨慎地在卡片上使用,不应当在警告框或者弹出框上使用,因为使用这种按钮,就会创建一层视觉深度。这种按钮的填充颜色一般使用 App 的主色,而下一种按钮,通常使用辅助的颜色。
  2. 扁平化按钮(Flat buttons): 通常文本使用 App 的主色,没有边框,它们通常使用间距和大写字母来强调不同内容之间的分离关系。

和 MD 相比较,iOS App 在外观上是完全扁平化的,没有层级深度和阴影。主要按钮有填充颜色,次级按钮反转颜色,也就是说,有着主色的边框和文字。这种方案有时候会受到一定的限制,特别将它是用于标签栏等元素的时候。要用好这种设计模式,你必须对不同的颜色在你的 App 中分别代表什么有一个清晰的概念。

button

9. 动作表单

动作表单(Action sheets)允许用户在多项操作中进行选择。比如,当我点击(或者长按)我想要分享、上传、复制或者删除的图片时。

iOS 和 Android 用近乎相同的方式解决这种问题。首先,动作表单都是出现在屏幕的地步,然后在主要内容上罩上一层阴影。然而,它们在创造不同的深度和其他细节方面有着一些不同。

  • Android 在动作表单上加了一层厚重的阴影,表明它是脱离于原先的内容的。
  • iOS 的动作表单没有阴影,仅仅是在原先的背景上防止了一个有一定透明度的灰色图案。

action-sheets

下拉按钮

只存在于 Android 上,它允许用户快速选择功能。然而,记住,这并不是 iOS 原生的控件之一。在下面的例子中,用户点击 profile,然后弹出了一个下拉菜单,提供了几个选项。

simple-menus

特殊数据输入

像特定的一些数据的输入,比如日期和时间,Android 现在有了原生的对话框,虽然它们看起来像是警告弹出框,一个例子是日历输入。iOS 使用完全不同的方式解决这个问题,它会在屏幕的底部弹出一个转轮让用户进行选择。在设计这些东西的时候要小心,并且和开发人员做好沟通。

10. 分类控制

分类控制允许用户以一种简单的方式在不同内容之间进行跳转。在不同的平台上,该控件的使用方式是完全相同的,但是在视觉上有着显著差异,因此要注意使用正确的形式。在 iOS 上,分类控制控件的外观很像我们刚才提到的按钮。而在 Android 上,通过间距来展现它们的分离关系,同时用下划线来标明目前所处的位置。

segmented

11. 弹出框

正确地处理这一类型的控件十分重要,因为他们也许会涉及到一些很重要的操作,例如注册,确认条款,甚至是确认支付。我们需要让他们看起来是原生的,以便产生一种安全感和信任感。

Android 的警告框使用的按钮样式,就是我们先前提到过的扁平按钮,你可以在 MD 说明文档中找到它们应有的尺寸。动作按钮位于卡片的右半部分。实际上,所谓的按钮其实就是一个文本。它们使用大写字母将它们和其他内容区别开,并且使用 App 的主色。

alert

12. icon

icon 设计是在 UI 设计中的一个比较特殊的领域。不管你是使用免费的 icon,和专门的 icon 设计师合作,还是自己设计 icon,不同的平台上对 icon 都有特别的样式要求。iOS 平台更偏好线形 icon,Android 上的 icon 的描边则更加地粗壮,或者干脆就用填充的 icon。这里是两个平台上的 icon 对比,你也可以点击这里的链接查看 iOSAndroid 下的 icon 设计规范。

icon

13. 面包菜单、载入图片

不幸的数字 13(注:最后的晚餐的在场人数)。通常来说,警告框和表示载入的图标留给开发者做决定。你或许已经经历过弹出框和警告框的设计和 App 的其他部分样式完全脱节的情况。那是因为通常 iOS 和 Android 平台都有对这些情况的默认的处理方案,但是你也可以利用你的方案进行替代。在这里,让你的设计能被真实还原的最好的方式就是和开发人员多进行沟通。

14. 通用 UI 控制

复选框,单选框和输入框,以及开关都是应该有着原生感觉的控件。像警告框和对话框一样,这些控件保持默认样式的话能够给用户带来熟悉感和信任感。尽可能多地使用原生控件,用户自然知道如何使用他们,并且在涉及到敏感信息和支付事宜的时候能够更信任你的 App。

在下面的例子中,我们可以看到两个平台上的差异其实是很小的,小到你在设计的时候可以忽略这些差异,用其中一种形式设计,但是不要忽略细节上的差异所带来的原生的感觉。使用你的 UI 库,并且在开发的早期和开发人员做好说明。

inputs

总结

在同一个设计稿中同时呈现出原生 iOS 和 Android 的感觉也并非一件不可能的任务。尝试在设计之初就注意到这些差别,并且注意对控件的使用,并且在设计过程中和开发人员保持紧密的联系。

资源

我希望这篇文章能够为你解答“在哪些方面将两个平台区别开”这个问题,但是你显然需要一些合适的工具或者模板来进行你的设计。这里有一些你可以用来开始你的设计的资源,我为你挑选出了一些最好的:

设计规范

如果你想要知道更多,我在文章中讲到的很多东西在平台设计规范中都有提到。事实上,它们涉及到的东西相当广泛,我只是抽取除了几章重要内容并将这些差别展示给你们。但是如果你有更多更细节的问题,我建议你阅读下面的东西:

UI 库

这些 UI 库能够帮助你剩下很多的防治和调整原生控件的时间。你可以从库中抽取出你要的部分并将它们用于你的 iOS 或 Android 设计稿中。

icon

即使你要自己绘制 icon,或者是请专门的 icon 设计师帮你绘制,你也有可能用到它们(做你的占位符吧!)。icon 设计本身就是一件有分量的工作,如果你不想让 icon 设计占用你太多的工作时间,我推荐你使用这些我在 icon8 上看见的不错的 icon。在 flation.com 上你能找到更多的通用 icon。

模型

Mockup 在你想别人展示你的设计稿的时候是一项非常好用的工具。这些模型有好几种类别。当你要展示 Android 设计稿的时候,你要小心选择这些模型。我倾向于使用 Nexus,因为它是 Google 自己设计的手机,对于其他的厂商来说没有倾向性。

【原文】A Tale of Two Platforms: Designing for Both Android and iOS

【原作者】Chris O’Sullivan

【翻译】设计派_小温

原创文章,作者:ioued,如若转载,请注明出处:https://www.iamue.com/11957/

(0)
iouedioued
上一篇 2016-01-06
下一篇 2016-01-06

相关推荐

  • 空状态的设计值得更多关注

    空状态,或称零数据状态,很多时候不太招设计师的待见。我们基本都是在主要流程界面的设计工作完成之后才会回过头来考虑完善一下,因为从表现上来看,空状态给人的感觉就是临时性的,有些微不足道。“用户会尝试多个同类app,然后在接下来的3到7天内决定其中的哪些不合适。对于’像样的’app,一旦用户决定保留超过7天,那么将会比较长久的存留下去。成功的关键在于怎样使产品在这3到7天当中保持与用户的良好互动。” Ankit Jain – Quettra“很多时候,人们放弃一款产品的原因其实都是我们可控的,例如他们无法一目了然的看出与你的app产生互动之后能给他们带来什么好处。” – Patrick Mckenzie

    2017-06-05
  • 视觉设计趋势预测 2015年-2016 年 (a)

    视觉设计是一门随着时代发展与社会变迁,随着人类认知提升与生活环境变化……

    2015-01-02
  • 央视(传统媒体)与互联网巨头(AB)在新交互形式“脸部识别”上的互怼

    支付宝霸气回应:“被盗我全赔”表明了对于人脸识别这个技术领域有比较大的知识储备与研究,针对人脸识别交互本身并不是支付宝作出这个霸气回应的核心因素

    2017-03-17
  • Axure RP软件 | UI设计师的必备神器,20G视频教程+软件+实战素材

    直达链接:http://www.xiaobaixitong.com/(复制电脑粘贴下载)在浏览器上百度搜索【小白】即可找到,点击带有官网标志的链接哦,其他的均为山寨软件哦Hi,我叫小白,可以协助你安装电脑系统哦小白公众号一直在做的两件事:1.协助用户安装windows系统2.分享海量的学习资料包(相信聪明的你应该知道去哪里找的)三年来,小白一直专注于电脑系统安装已经免费为数钱千万用户成功安装上系统操作界面用小白成功安装上,系统后简直不要...

    2018-04-04
  • 【科普】给想学交互设计的同学的一些建议

    最近在知乎上,有很多人问我,交互设计有什么好的学校?出国读研和在国内读研应该怎么选择?就业怎么样?其实在行业内和行业外,信息存在大量的不对称,很多同学都不太清楚怎么入门和学习交互,我觉得有必要专门开个文章聊下这个话题,算是一个有工作经验的人给新入行或者将要入行的同学的建议。1. 交互设计是否需要读研?我的答案是:看你的情况。每个人情况不同,自然对应不同的选择。情况A:如果本科就受过交互设计方面系统的训练(学校课程、实习等),有一定天赋和...

    2018-02-11
  • UCD,以用户为中心的设计

    前言:一直有在梳理自己的知识结构,也靠这些所谓经验做了几年行业培训,今年是从业的第十一年,我觉得差不多是时候把这些最初来自同行、互联网和书籍的知识再还给行业,我会把所有所得分章节逐渐整理发出,希望能对行业尽一份绵薄之力,同时也作为一种仪式,好让自己重新出发。任何项目都从一个idea开始,你走在路上,蹲在马桶上;吃着饭,看着电视,灵光一闪,觉得大致可以做一个什么东西来实现世界的爱与和平,这就是一个愿景的诞生;来源无法归纳,却是后面折腾的开始。
    然后就是“分析研究”,分析市场,分析技术,分析用户,一边分析一边验证愿景;顺利通过这个环节,得到的就是设计需求。需求的来源多元,组成亦是多元。需求得到,就要进行梳理,以确定下来;这就是“需求过滤”或者“需求定义”。
    接下来就是把需求转化成对应的功能和数据,这是产品的骨骼血肉,功能数据要满足需求。比如需求是解渴,对应的功能就能是可乐或者矿泉水,但不能是热干面。从这个环节起,产品从抽象变具体。
    功能数据有了,长什么样?我们要把它们设计出来。设计分成“概念设计”和“细节设计”两个阶段,设计又分为“交互设计”和“视觉设计”两条线,所以就有了“概念交互和视觉设计”及“细节交互和视觉设计”。
    设计过程中需要进行“测试验证”,验证的结果用来迭代设计,所以大家看到有个双箭头。设计好了,提交研发。在这个阶段,我们做“研发支持”,也就是传达设计需求给研发,并且做研发过程中针对突发情况进行及时的设计修改;比如某个提示的补漏之类的。
    最后是“设计验收”。一般来讲,刚研发出来的版本多少有些变形有些不符合设计需求,所以我们要验收。列出结果清单,打回去重新调整。调整到什么程度才可以,要看具体到项目周期和策略。举个例子:我们筛选好约好被试(测试用户),分配给他们分析产品和分析任务,比如对比京东和淘宝的支付流程,让他们回去好好体验一个礼拜,让用户熟悉产品以心里产生评价。然后回到我们实验室,再走一遍,这一遍是被观察。然后就是访谈,询问他们的各种维度的评价,比如对于收货地址选择方式的偏好,最后我们统计归纳。这就是让用户来帮我们分析。“其实你什么都没有做错,错在你太老了。我们最早看到Snapchat,外国13-18岁小孩在用,我们高管用了觉得好傻好无聊,看不到价值,只投了一点,后来涨得很快。这个公司我们副总去过,就是海边一个玻璃房,很小的公司,感觉一个石头就把他们击破了。当时只有2000万美金,我们没进去,现在远远超过我们想象,百亿美金。

    2017-05-31
  • 干货!如何做一个让人闻风丧胆的Html5页面

    Specifies the initial zoom factor for the window or viewing area. This is a magnifying glass type of zoom. Interactively changing the zoom factor from the initial zoom factor does not affect the size of the initial or the actual viewport.A two-dimensional transformation is applied to the coordinate system an element renders in through the ‘transform’ property. This property contains a list of transform functions. The final transformation value for a coordinate system is obtained by converting each function in the list to its corresponding matrix (either defined in this specification or by reference to the SVG specification), then multiplying the matrices.The value of the transform property is a list of applied in the order provided. … specifies a scale operation using the [sx,1] scaling vector, where sx is given as the parameter. … specifies a scale operation using the [1,sy] scaling vector, where sy is given as the parameter.

    2017-06-03
  • 至纯至简|手机百度8.0设计总结

    8.0是手机百度发展过程中一个重要里程碑,它不仅延续了产品建立以来的要点,打破历史包袱,与时俱进地从体验和产品角度进行了创新,通过全新的整体交互框架与视觉风格,将搜索、语音搜索、FEED流信息获取、多垂类服务等进行了再设计。

    2017-05-12
  • 给小白看的交互设计启蒙帖(一)

    通常来说,拥有成熟产品的大型互联网公司都会设有交互设计岗位,这个岗位在近几年的招聘市场上也越炒越火。不同于视觉设计师有可视化的作品展示,交互设计师的工作大多无法直观可视化或出于保密性难以对外展示,所以在大众心目中始终是神秘的存在。所以今天就来给大家分享一下我作为一个交互设计师眼中的交互是什么样的。文章的目的是帮助对交互设计不太了解,但工作相关或对此感兴趣的人对交互设计进行基础入门的了解,所以采用了尽量平实简单的描述方式,以帮助大家快速理...

    2018-03-14
  • 记第一份工作

    将近一个月的求职生活,工作算是尘埃落定,现在回过头来看看,想说的很多。 一开始都是抱着美好的向往与想象,奔向自己的理想目标,那股无所畏惧的热血激昂澎湃,这是青春该有的节奏。“现实往往是残酷的”这句话我也…

    交互设计 2015-11-14