适配6 、6P 来源互联网

iPhone 6 6P出现后,如何将一份设计稿支持多个尺寸?

如何只出一套iOS平台设计稿?随着苹果发布两种新尺寸的大屏iPhone 6,下面三款iPhone尺寸和分辨率数据就知道屏幕有多杂了。

现在APP设计开发必须考虑适配大、中、小三种屏幕。所以如何做到交付一套设计稿解决适配大中小三屏的问题?设计和开发之间采用什么协作模式?一个基本思路是:

1、选择一种尺寸作为设计和开发基准;

2、定义一套适配规则,自动适配剩下两种尺寸;

3、特殊适配效果给出设计效果。

手机淘宝的iPhone 6/iPhone 6 Plus适配版本即将提交App store审核。先晒一下我们采用的协作模式,再慢慢说明原委。

第一步,视觉设计阶段,设计师按宽度750px(iPhone 6)做设计稿,除图片外所有设计元素用矢量路径来做。设计定稿后在750px的设计稿上做标注,输出标注图。同时等比放大1.5倍生成宽度1125px的设计稿,在1125px的稿子里切图。

第二步,输出两个交付物给开发工程师:一个是程序用到的@3x切图资源,另一个是宽度750px的设计标注图。

第三步,开发工程师拿到750px标注图和@3x切图资源,完成iPhone 6(375pt)的界面开发。此阶段不能用固定宽度的方式开发界面,得用自动布局(auto layout),方便后续适配到其它尺寸。

第四步,适配调试阶段,基于iPhone 6的界面效果,分别向上向下调试iPhone 6 plus(414pt)和iPhone 5S及以下(320pt)的界面效果。由此完成大中小三屏适配。

为什么选择iPhone 6作为基准尺寸?

当面对大中小三种屏幕需要适配的时候,很容易想到先做好一种屏幕,再去适配剩下两种屏幕。第一个决定是到底以哪种屏幕作为设计和开发的基准尺寸。我们选择中间尺寸的iPhone 6(750px/375pt)作为基准,基于几个原因:

1、从中间尺寸向上和向下适配的时候界面调整的幅度最小。375pt下的设计效果适配到414pt和320pt偏差不会太大。假设以414pt为基准做出很优雅的设计,到320pt可能元素之间比例就不是那么回事了,比如图片和文字之间视觉比例可能失调。

2、iPhone 6 plus有两种显示模式,标准模式分辨率为1242x2208,放大模式分辨率为1125x2001(即iPhone 6的1.5倍)。可见官方系统里iPhone 6和iPhone 6 plus分辨率之间就存在1.5倍的倍率关系。很多情况下这两种尺寸可以用1.5倍直接等比适配。

3、1242x2208这个奇葩的数值是苹果官方都不愿意公开宣传的一个分辨率,不便于记忆和计算栅格。640x1136虽然是广泛应用的一个分辨率,但是大屏时代依然以小尺寸为设计基准显然不合时宜,设计师会停留在小屏的视角做设计。

所以,iPhone6的750x1334是最适合基准尺寸。

只交付一套设计稿,默认用什么规则来适配?

前文提到适配策略是先选择iPhone 6作为基准设计尺寸,然后通过一套适配规则自动适配到另外两种尺寸。这套适配规则总结起来就一句话:文字流式,控件弹性,图片等比缩放。

控件弹性指的是,navigation、cell、bar等适配过程中垂直方向上高度不变;水平方向宽度变化时,通过调整元素间距或元素右对齐的方式实现自适应。这样屏幕越大,在垂直方向上可以显示更多内容,发挥大屏幕的优势。

按照上述默认适配规则,大中小三种屏幕显示效果均相同。有时候想在大屏幕显示更多内容,需要设计出特殊适配效果。比如App store首页焦点图,从iPhone 6适配到iPhone 6 plus时焦点图尺寸和排版做了特殊处理。底下应用列表也从一排3+个变成一排4+个,真正实现了大屏幕显示更多内容的理念。这些就需要设计师给出相应设计稿。

时间: 2024-10-23 20:14:49

适配6 、6P 来源互联网的相关文章

[互联网开源知识]001.网络广告定价模式

在有关网络广告的术语中,经常会遇到CPA.CPC.CPM.CPO.PPC.PPL等缩写字母,这些都是有关网络广告定价方式的缩写短语. 命令索引: CPA CPC CPL CPM CPO CPP PPC PPL PPS CPTM CPS CPR PFP 一个网络媒体(网站)会包含有数十个甚至成千上万个页面,站点为获得生存,一般都需要在站点投放网络广告.网络广告所投放的位置和价格就牵涉到特定的页面 以及浏览人数的多寡.这好比平面媒体(如报纸)的“版位”.“发行量”,或者电波媒体(如电视)的“时段”.

华为云首批通过可信区块链评测

华为云首批通过可信区块链评测来源:互联网近年来,区块链技术正在被各行各业所认可,具有"降成本.提效率.优化产业诚信环境"的作用.基于区块链系统,数据可以被有效地确权,通过"可信数字化"的数据上链过程,有效地保障数据的真实性,实事求是地为产业解决过往难以解决的问题,从"降成本"和"提效率"两个方面推动各行业的转型升级. 日前,在2019华为中国生态合作伙伴大会上,华为云就发布了区块链+政务.区块链+公司间交易.区块链+供应链物流

将Word文档发给别人时如何限制别人只能修改文档部分内容

将Word文档发给别人时如何限制别人只能修改文档部分内容 转自:互联网.时间:2014-04-16   作者:snow   来源:互联网 在很多情况下我们都不希望别人修改我们的文档内容,特别实在将Word文档发给别人时,我们只希望别人能够在word文档中填写该填的地方,不该填写的地方只能看,不能修改.整个文档完成后就向填空题一样,只能在里面填入相关的内容,不能更改和编辑其他部分.想实现这样的功能并非难事,只需对文档中的部分内容设置保护即可,同样如果内容不需要保护,只需解除即可.  一.设置保护的

linux获取外网ip

引言:目前获取ip的方法中,ifconfig和ip获取函数得到的都是内网ip.有时候需要获取外网ip,目前通用的做法,是向外部服务器发送请求,解析外部服务器响应,从而得到的自己的外网ip.linux下的 curl可以替我们完成这些工作,当然,不怕麻烦的话,可以自己分析http协议,自己实现以上过程.如果熟悉python的话,那就更简单了,就像我们所知道的,python总是有现成的库函数可供我们调用.一下总结几种获取外网ip的方法,以供查询,资料来源互联网. 参看资料: http://www.cn

MySQL多线程同步-Transfer使用测试

由淘宝核心系统研发-数据库组开发的MySQL-Transfer,用于解决MySQL主从同步延迟的问题,从MySQL单线程到多线程的工作模式.可以观看@丁奇的相关资料: MySQL多线程同步-Transfer使用说明MySQL异步复制延迟解决的架构设计与运维架构-在线播放-优酷网 系统结构 : 传统的主从结构是 [Master] à [Slave], Master和slave主从关系: 使用transfer以后,[Master] à [Transfer] .--> [Slave], Master和

EZchip将推全球首款100核64位ARM A-53芯片

EZchip将推全球首款100核64位ARM A-53芯片 2015-02-25 16:32:03   来源:互联网    关键字: 将推  全球  64位  arm EZchip日前表示,将准备开发一款可以与博通.Cavium及英特尔竞争的服务器及通信系统处理器,不过该处理器将采用ARM架构,使用100颗64位A53内核.这颗采用28nm制程,2017年之后量产的处理速度高达200Gb/s的 Tile-MX100 的性能将超过大多数竞争对手.       该芯片是基于Tile-Gx多核架构,该

IIS7 全新管理工具AppCmd.exe的命令使用实例分享

IIS 7 提供了一个新的命令行工具 Appcmd.exe,可以使用该工具来配置和查询 Web 服务器上的对象,并以文本或 XML 格式返回输出. 下面是一些可以使用 Appcmd.exe 完成的任务的示例: •创建和配置站点.应用程序.应用程序池和虚拟目录. •停止和启动站点. •启动.停止和回收应用程序池. •查看有关在 Web 服务器上运行的工作进程和请求的信息. Appcmd.exe 为常见的查询和配置任务提供了一致的命令,从而降低了学习语法的复杂性. 例如,您可以使用 list 命令来

HTTP的KeepAlive是开启还是关闭?

http://itindex.net/detail/50719-http-keepalive 1.KeepAlive的概念与优势 HTTP的KeepAlive就是浏览器和服务端之间保持长连接,这个连接是可以复用的.当客户端发送一次请求,收到相应内容后,这个连接会保持一段时间,在该时间内的第二次就不需要再重新建立连接,就可以直接使用这次的连接来发送请求了,极大的提高了速度. 2.KeepAlive的劣势 是不是所有网站都应该开启KeepAlive了?答案肯定是不是的.KeepAlive在增加访问效

java NIO-Channel

基本简介 Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式. Java NIO: Channels and Buffers(通道和缓冲区) 标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中. Java NIO: Non-blocking IO(非阻塞IO) Java