阿里巴巴Android开发手册:Android 资源文件命名与使用
【推荐】资源文件需带模块前缀。
【推荐】layout文件的命名方式。
Activity的layout以module_activity开头
Fragment的layout以module_fragment开头
Dialog的layout以module_dialog开头
include的layout以module_include开头
ListView的行layout以module_list_item开头
RecyclerView的itemlayout以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文件中,命
名格式采用以下规则:
模块名_逻辑名称_颜色
如:
<colorname="module_btn_bg_color">#33b5e5e5</color>
【推荐】dimen资源以小写单词+下划线方式命名,写入module_dimens.xml文件中,
采用以下规则:
模块名_描述信息
如:
<dimenname="module_horizontal_line_height">1dp</dimen>
【推荐】style资源采用小写单词+下划线方式命名,写入module_styles.xml文件中,
采用以下规则:
父style名称.当前style名称
如:
<stylename="ParentTheme.ThisActivityTheme">
…
</style>
【推荐】string资源文件或者文本用到字符需要全部写入module_strings.xml文件中,
字符串以小写单词+下划线的方式命名,采用以下规则:
模块名_逻辑名称
如:moudule_login_tips,module_homepage_notice_desc
【推荐】Id资源原则上以驼峰法命名,View组件的资源id需要以View的缩写作为
前缀。常用缩写表如下:
其它控件的缩写推荐使用小写字母并用下划线进行分割,例如:
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目录