Android资源文件命名规范学习手册
【推荐】 资源文件需带模块前缀。
【推荐】 layout 文件的命名方式。
Activity 的 layout 以 module_activity 开头
Fragment 的 layout 以 module_fragment 开头
Dialog 的 layout 以 module_dialog 开头
include 的 layout 以 module_include 开头
ListView 的行 layout 以 module_list_item 开头
RecyclerView 的 item layout 以 module_recycle_item 开头
GridView 的行 layout 以 module_grid_item 开头
【推荐】 drawable 资源名称以小写单词+下划线的方式命名,根据分辨率不同存放在不同的 drawable 目录下,建议只使用一套,例如 drawable-xhdpi。
采用规则如下:
模块名_业务功能描述_控件描述_控件状态限定词
如:module_login_btn_pressed,module_tabs_icon_home_normal
【推荐】 anim 资源名称以小写单词+下划线的方式命名,采用以下规则:
模块名_逻辑名称_[方向|序号]
tween 动 画 资 源 : 尽 可 能 以 通 用 的 动 画 名 称 命 名 , 如 module_fade_in ,
module_fade_out , module_push_down_in (动画+方向);
frame 动画资源:尽可能以模 块+功能命名+序号。如:module_loading_grey_001
【推荐】 color 资源使用#AARRGGBB 格式,写入 module_colors.xml 文件中,命
名格式采用以下规则:
模块名_逻辑名称_颜色
如:
<color name="module_btn_bg_color">#33b5e5e5</color>
【推荐】dimen 资源以小写单词+下划线方式命名,写入 module_dimens.xml 文件中,
采用以下规则:
模块名_描述信息
如:
<dimen name="module_horizontal_line_height">1dp</dimen>
【推荐】style 资源采用小写单词+下划线方式命名,写入 module_styles.xml 文件中,
采用以下规则:
父 style 名称.当前 style 名称
如:
<style name="ParentTheme.ThisActivityTheme">
…
</style>
【推荐】string资源文件或者文本用到字符需要全部写入 module_strings.xml文件中,
字符串以小写单词+下划线的方式命名,采用以下规则:
模块名_逻辑名称
如:moudule_login_tips,module_homepage_notice_desc
【推荐】 Id 资源原则上以驼峰法命名,View 组件的资源 id 需要以 View 的缩写作为
前缀。常用缩写表如下:
| 控件 | 缩写 |
| LinearLayout | ll |
| RelativeLayout | rl |
| ConstraintLayout | cl |
| ListView | lv |
| ScollView | sv |
| TextView | tv |
| Button | btn |
| ImageView | iv |
| CheckBox | cb |
| RadioButton | rb |
| EditText | et |
其它控件的缩写推荐使用小写字母并用下划线进行分割,例如:
ProgressBar 对应的缩写为 progress_bar
DatePicker 对应的缩写为 date_picker
【推荐】 大分辨率图片(单维度超过 1000)大分辨率图片建议统一放在 xxhdpi 目录下管理,否则将导致占用内存成倍数增加。
说明:
为了支持多种屏幕尺寸和密度,Android 为多种屏幕提供不同的资源目录进行适配。为不同屏幕密度提供不同的位图可绘制对象,可用于密度特定资源的配置限定符(在下面详述) 包括 ldpi(低)、 mdpi(中)、 hdpi(高)、 xhdpi(超高)、 xxhdpi (超超高)和 xxxhdpi(超超超高)。例如,高密度屏幕的位图应使用 drawable-hdpi/。
根据当前的设备屏幕尺寸和密度,将会寻找最匹配的资源,如果将高分辨率图片放入低密度目录,将会造成低端机加载过大图片资源,又可能造成 OOM,同时也是资源浪费,没有必要在低端机使用大图。
正例:将 144*144 的应用图标 PNG 文件放在 drawable-xxhdpi 目录
反例:将 144*144 的应用图标 PNG 文件放在 drawable-mhdpi
目录扩展参考:https://developer.android.com/guide/practices/screens_support
Android资源文件命名规范学习手册的更多相关文章
- Android资源文件命名规范
在复杂Android应用的开发中,资源文件的规范命名非常重要,能帮助设计人员和开发人员减小沟通成本.资源的名字尽量力求准确,可以适当长一些,但换回的价值是值得的. 关于WCC的Android开发,资源 ...
- Android 资源文件命名与使用
[推荐]资源文件需带模块前缀 [推荐]layout 文件的命名方式 Activity 的 layout 以 module_activity 开头 Fragment 的 layout 以 module_ ...
- ANDROID资源文件【转】
1. 资源包括:文本字符串.图像和图标.音频文件.视频和其他应用程序使用的组件. 2. 在Android工程中,Android资源文件是同Java类文件分开存储的,大多数常见的资源类型存储在XML ...
- Android资源文件简介
Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, 资源 ...
- 【转】关于Android资源文件中出现百分号的问题
关于Android资源文件中出现百分号的问题 分类: Android JAVA2014-08-01 16:53 1345人阅读 评论(0) 收藏 举报 ANDROID格式化资源文件 目录(?)[+ ...
- 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
. 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19913755 . 一. Android资源文件简介 1 ...
- Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- Android资源文件说明
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- css样式文件命名规范
样式文件命名规范 主要 master.css, style.css, main.css 布局 layout.css 专栏 columns.css 文字 font.css 打印 print.css 主题 ...
随机推荐
- Python字典取键、值对
1. 取键:keys()方法 #spyder bb={'人才/可怕':23,'伏地魔&波特':'army','哈哈哈,人才,回合':'hhh'} for ii in bb.keys(): pr ...
- Windows——Office使用激活工具激活后仍提示激活
问题: Office使用激活工具激活后仍提示激活 分析: 造成该问题的原因通常是未删除操作系统预置Office导致的, 解决方案: 调出运行,输入regedit打开注册表编辑器, 依次打开 HKE ...
- Guava【google】
Guava 是什么? Guava是一种基于开源的Java库,其中包含谷歌正在由他们很多项目使用的很多核心库.这个库是为了方便编码,并减少编码错误.这个库提供用于集合,缓存,支持原语,并发性,常见注解, ...
- Codeforces Round #524 (Div. 2) Masha and two friends矩形
题目 题意: 给一个n*m块大的黑白相间的矩形,在这个举行中操作,要先把第一个矩形(左下角坐标(x1,y2),右上角坐标(x2,y2)) 全部涂成白色,再把第二个矩形(左下角坐标(x3,y3), ...
- java学习(1) ----getMethod()和getDeclaredMethod()的区别(转)
转自: https://blog.csdn.net/qq_36443736/article/details/82890011 getMethod():获取自身能用所有的public公共方法.1.类本身 ...
- MySQL服务器
---恢复内容开始--- mysql是基于C/S端的服务器软件 mysql服务端 -server端开启 -解析指令 -对文件夹.文件.数据的增删改查 mysql客户端 -连接S段 -发送指令(sql语 ...
- Js数组排序以及对象排序
封装排序方法 对象排序方法 function compare(arr,styleName){ arr.sort((a,b)=>{ let x=a[styleName]; let y=b[styl ...
- go语言开发IDE
软件下载及绿化方法 GoLand-2018.3 链接:https://pan.baidu.com/s/15AKPDIJIN86vxfriHBjE-g 提取码:060h 选择路径的时候,去掉路径名的版本 ...
- Python 高级(二)
多继承以及MRO顺序 1. 单独调用父类的方法 # coding=utf-8 print("******多继承使用类名.__init__ 发生的状态******") class P ...
- python - redis 的使用
1.redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRe ...