App切图命名规范
转自:http://www.uisdc.com/slice-rename-in-ui-design(略有修改)
关于切图命名的规范,我个人觉得关键是在于团队能够有一个统一的规则,所有成员严格遵守并且和所有开发全盘拉通,不然一切都是空谈。
不同的团队使用的软件都不一样,如果经常使用sketch软件中Symbols 的同学,可能在命名的时候会考虑更多内容,但是照顾到还有很多同学在使用PS 作图,所以这里只介绍一种通用的命名规则,当然大家也可以根据自己的实际情况去制定,这里只提供一种方法与思路,仅供参考。
一、为什么要制定规范的命名规范
1. 自身层面
对我们自己的文件整理有很大的帮助,后期修改文件、图层的时候更加方便快捷,而且规范的命名也显得我们自身比较专业。
2. 团队层面
如果命名不统一,大家就很难达成共识,任务交接时需要很大的学习成本,所以规范的命名对于团队协同也有极大的推动作用。
3. 开发层面
这一点是最重要的,可以极大的节省程序开发的时间成本,减少很多不必要的沟通与重复切图的概率,因为只要我们的命名足够规范,并且和开发达成共识,他们完全可以直接使用的我们切片而不更改切片的名称,后期我们更换切图,只要切片名称不变,开发看都不用看直接替换就可以了。
二、所有命名全部为小写英文字母,单词间用下划线“_”分隔。
这一点的理由很简单,我们的目标是让开发直接拿我们的切图进行使用,不能够随意修改名称,但是我们要知道,开发哥哥的代码里只有小写的英文字母,如果你给出的命名全是中文的,那么他们是一定会更改的。所以命名全部用小写的英文字母是最基本的规则。
三、命名格式
众所周知,一个大型项目会分很多模块,每个模块由不同的设计师来独立完成,还有人会专门管理公共的组件,如tabbar、navbar等等,这种情况下就会分为两种切图,一种是通用类型的切图,还有一种就是各个模块特有的切图。
通用切片命名格式:
组件_类别_功能_状态@2x.png
举例:tabbar_icon_home_default@2x.png
(对应中文:标签栏_图标_主页_默认@2x.png)
模块特有切图命名规则:
模块_类别_功能_状态@2x.png
举例:mail_icon_search_pressed@2x.png
(对应的中文为:邮件_图标_搜索_ 默认@2x.png)
功能:bg(背景),btn(按钮底图),icon(图标),img(图片),pho(照片)。
状态:_n:正常(_normal);_s:选中(selected);_p:按下(pressed);_d:不能点击(disabled);_h:点击(highlight)。
当然这两个例子都是比较基本的情况,有很多时候可能一个单词并不能清楚的描述功能,比如有两个名字相同的搜索图标,大小不一,那这种情况你就可以这样命名:mail_icon_search_big_default@2x.png,我们的原则就是清晰的表达出切片的具体内容并且没有重复的名称,希望大家能够活学活用。(大家要注意,命名中不能含有空格!)
四、常用英文单词表
1、英文单词缩写原则及常用英文单词缩写列表:
如果所有命名都写为全称,名字就会特别长,所以我们可以将一些常用的英文单词进行缩写,减少工作成本与开发代码资源。切图命名英文缩写三个原则:
1 较短的单词可通过去掉“元音”形成缩写
2 较长的单词可取单词的头几个字母形成缩写
3 此外还有一些约定成俗的英文单词缩写.
下面提供一些命名时常用的英文单词列表(有些是已经缩写过的,仅供参考)
- bg(backgrond 背景)
- nav(navbar 导航栏)
- tab(tabbar 标签栏)
- btn(button 按钮)
- img(image 图片)
- del(delete 删除)
- msg(message 提示信息)
- pop(pop up 弹出)
- icon(图标)
- selected(选中)
- disabled(不可点击)
- default(默认)
- pressed(按下)
- back(返回)
- edit(编辑)
- content(内容)
- left/center/right(左/中/右)
- logo(标识)
- login(登录)
- refresh(刷新)
- banner(广告)
- link(链接)
- user(用户)
- download(下载)
- note(注释)
2、常见界面、控件、功能、状态命名集合:
APP产品经理、APP设计师、APP开发工程师,包括H5前端开发人员都可以记住的文件命名规范。
非常完整的APP元件切图的中英文对照表。
有些人会觉得写这么多英文太麻烦,但其实为了自己专业能力的提高,这种规范的命名方式是必须要经历的过程,当你习惯了这样的命名方式后,你的成就感会油然而生。
五、总结
今天要分享的内容就这么多,最后还是想和大家说,有什么不懂得地方,真的要多去咨询开发的同事,去思考问题的本质原因是什么,每一个小问题都需要我们去透彻的理解,反之积攒多了,最后吃亏的还是你自己。
任何别人给出的规范,都不要直接拿来就用,要去思考为什么用这样的规范,解决什么样的问题?你有没有更好的解决方案?试问一下,苹果和安卓开发的切图文件管理机制是怎样的?有什么区别?如果这么基础的问题你都不知道,而是拿着别人的规范直接套用,那结果就是被别人牵着走。
所以去了解所有表层背后的思考与逻辑,也许下一个规范就是你制定的!
全方位切图教程:
- 切图流程:《纯干货!一款APP从设计稿到切图过程全方位揭秘》
- 切图神器:《“没有它我就不会切图!”省时省力的切图神器SLICY下载》
- PS切图介绍:《实用小教程:PHOTOSHOP CC智能切图功能介绍》
- 切图方法:《超全面的UI设计切图规范指南》
App切图命名规范的更多相关文章
- Android UI 切图命名规范、标注规范及单位描述(转载)
本文转自:https://blog.csdn.net/klxh2009/article/details/74938009 很多UI设计师做APP切图都会有两套,一套是Android的,一套是IOS的. ...
- 转发-UI基础教程 – 原生App切图的那些事儿
UI基础教程 – 原生App切图的那些事儿 转发:http://www.shejidaren.com/app-ui-cut-and-slice.html 移动APP切图是UI设计必须学会的一项技能,切 ...
- 原生App切图的那些事儿
如何切图? 了解iphone界面的尺寸 最小的分辨率是320x480,我们把这个尺寸定为基准界面尺寸(baseline),基准尺寸所用的图标定为1倍图(1x). 在实际设计过程中,为了降低设计成本,一 ...
- APP切图标记PS的外挂神器-Assistor PS(转)
目前APP设计师们对Assistor PS 可是好评连连,说是切图仔的福音或救星.确实是这样的. 与其他切图标记软件不同的是,Assistor PS 是完全独立于 PS 本身的,说是一个外挂更加合适, ...
- 学习笔记:APP切图那点事儿–详细介绍android和ios平台
学习笔记:APP切图那点事儿–详细介绍android和ios平台 转载自:http://www.woofeng.cn/articles/168.html 版权归原作者所有 作者:亚茹有李 原文地址 ...
- APP切图那些事儿-Android ios
- 切图教程,APP切图实例
- UI,切图,命名
APP切图流程和APP切图命名规范详细完整版 http://www.25xt.com/appdesign/7339.html Marketch
- Android屏幕适配与切图_汇总
首先和最后,还是先看好官方文档:http://developer.android.com/guide/practices/screens_support.html 对应的翻译blog有牛人做了:And ...
随机推荐
- 我也说说Emacs吧(3) - 文件基本操作
Spacemacs文件基本操作 有了前两讲的积累,我们知道了: 1. 我们既要学习emacs的操作,也要学习vi的操作 2. emacs是一个可扩展的平台,我们并不是从头配置,而是使用一套成熟的集成方 ...
- Android中的“再按一次返回键退出程序”实现 (转) 按返回键退出程序时进行提醒
原文地址: https://blog.csdn.net/xichenguan/article/details/47030303 最近在研究 Android 编程方面的东西, 有了以下发现, 该 ...
- js之10天内免登陆
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Learning Scrapy(一)
学习爬虫有一段时间了,从Python的Urllib.Urlllib2到scrapy,当然,scrapy的性能且效率是最高的,自己之前也看过一些资料,在此学习总结下. Scrapy介绍 关于scrapy ...
- PHP 获取中英文混合字符串长度
通常情况下要想掌握一个字符串变量的长度[一般掌握其字数],自然想到 strlen |-- $str = 'string'; echo strlen($str); //6 .csharpcode, ...
- threejs 世界坐标与屏幕坐标相互转换
屏幕坐标转世界坐标: let pX = (screenPoint.x / this.scene.renderer.domElement.clientWidth) * 2 - 1; let pY = - ...
- 如何使用 MSBuild Target(Exec)中的控制台输出
我曾经写过一篇文章 如何创建一个基于命令行工具的跨平台的 NuGet 工具包,通过编写一个控制台程序来参与编译过程.但是,相比于 基于 Task 的方式,可控制的因素还是太少了. 有没有什么办法能够让 ...
- For input string: "null"
java.lang.NumberFormatException: For input string: "null" 在开发中你是否遇到过这样的问题,不管请求到的值是什么都能进入不为 ...
- python selenium 开发环境配置
selenium是一个web测试应用框架也可以拿来做爬虫. 1.安装selenium模块 pip install -U selenium 2.安装selenium模块后需要有相应的浏览器驱动 A.使用 ...
- PEP
用python , PEP难以绕过. PEP是什么? Python Enhancement Proposals , 它集合了python的改进提案. 它不是版本递进的, 有些PEP是应该去读一 ...