Android 资源文件命名规范

本文介绍了Android项目中资源文件如layout、drawable等的命名规范,旨在通过合理的命名提高项目的可维护性和资源的复用性。文章详细阐述了不同类型的资源如何根据模块进行分类和命名,以实现快速定位和高效管理。
摘要由CSDN通过智能技术生成

前言

在我们开发Android的时候,肯定会用到资源文件,color,dimen,string等等,当我们项目小的时候,我们使用资源文件并没有关注使用的规范.导致项目大了以后或者ui经过几次的改版之后,资源文件中的资源名称命名很是混乱.下面我就看看其他的文章和自身的经验,来总结一下资源文件中的命名规范

以下的说法都是博主个人觉得比较好的观点,如果各位有什么不同的意见,欢迎讨论

命名的唯一的一个目的就是为了后期便于维护

命名的总体的一个方式就是根据模块来命名,能达到看到名字就能知道这个资源的作用就可以啦

命名的唯一的一个目的就是为了后期便于维护

命名的总体的一个方式就是根据模块来命名,能达到看到名字就能知道这个资源的作用就可以啦

而我们的所有资源大概分为以下两类:

1.layout drawable mipmap

2.strings colors dimens

第一种资源是以单个文件作为区分的,都是在一个目录下的,顺序是根据名称而定的

第二种资源是定义在一个文件内的,内部的顺序是可以自己人为协调的

1.layout drawable mipmap
使用模块的名称来开头,这样子可以让一个模块下的文件都自动被IDE规整到一块了,便于查找也便于管理,不用到处寻找了

如果一些是多个界面通用的资源,采用统一的common_前缀开头来命名,可让通用的资源都规整到一块

2.strings colors dimens
这类资源是文件内部声明的,所以我们可以在内部根据模块进行编写,一个模块的统一规整到一块
通用的资源可以单独规整

特别注意:在项目中我们经常可以见到的命名比如

<color name="red">#FF0000</color>

这种命名是描述资源本身的是严禁在代码中直接使用的,因为此类资源没有任何一点的模块划分,也和业务没有一丝的关系

命名总结
layout

非共有类型:{模块描述}_{布局类型}

共有功能类型:{common}_{布局类型}

main_act
表示主界面Activity的布局

main_home_frag
表示主界面的子页面HomeFragment的布局

myorder_act
表示我的订单的界面

myorder_list_item
表示我的订单的列表的item

common_order_list_item
表示多个界面用到的订单列表的item

common_taxi_order_list_item
表示多个界面用到的出租车订单列表的item

drawable 和 mipmap

非共有类型:{模块描述}_{视图类型}_{业务描述}_{类型}_{后缀}

共有功能类型:{common}_{视图类型}_{业务描述}_{类型}_{后缀}

类型:_ic,_bg(貌似就这两种了)

后缀:_normal,_pressed,_selected,_selector,_disable……

后缀默认的就是_normal,可以被省略的

main_iv_goback_ic_normal
表示主界面的返回图标的imageview的图标

main_iv_goback_bg_normal
表示主界面的返回图标的imageview的背景

main_iv_goback_bg_selector
表示主界面的返回图标的imageview的背景选择器

common_iv_goback_ic_selector 表示通用的返回图标的图标选择器

strings 和 colors 和 dimens

非共有类型:{模块描述}_{视图类型}_{业务描述}_{后缀}

共有功能类型:{业务功能}_{视图类型}_{业务描述}_{后缀}

后缀:_normal,_pressed,_selected,_selector,_disable……

<string name="main_home_et_password_hint">请输入密码</string>

表示主页的home子页面中的密码输入框的提示文本

<string name="main_home_et_password_text">123456</string>

表示主页的home子页面中的密码输入框的默认显示密码为123456,

订单列表中的确认收货按钮的文本
<string name="order_list_item_btn_confirmreceipt">确认收货</string>
订单列表中的确认收货按钮被按下时候的文本
<string name="order_list_item_btn_confirmreceipt_pressed">确认收货</string>

order 表示视图功能描述,list_item_btn 是视图类型,confirmreceipt 是业务描述

<resources>

    <!--============不可直接使用的静态资源==========-->

    <string name="ok">确认</string>
    <string name="completed">已完成</string>
    <string name="exit">退出</string>
    <string name="find">发现</string>


    <!--===========共有部分 =========-->

    <string name="app_name">Soar</string>
    <!--订单列表中的确认订单按钮文本-->
    <string name="order_list_item_btn_confirmreceipt">确认收货</string>
    <!--弹框中的确认按钮的文本-->
    <string name="dialg_btn_confirm">好的</string>


    <!--===========主界面 =========-->

    <string name="main_home_btn_confirm">@string/ok</string>

    <!--首页和发现页面的标题栏文本-->
    <string name="main_home_title">首页</string>
    <string name="main_find_title">@string/find</string>

    <!--===========主界面 end===========-->

</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <!--============不可直接使用的静态资源==========-->

    <!--两个静态资源,不能直接使用的-->
    <color name="red">#FF0000</color>
    <color name="blue">#0000FF</color>

    <!--============共有部分==========-->

    <!--所有界面的标题栏的背景颜色-->
    <color name="titlebar">@color/red</color>
    <color name="titlebar_bg">@color/red</color>
    <!--所有界面的分割线颜色-->
    <color name="item_div_bg">#888888</color>
    <!--所有订单的确认按钮的的背景色-->
    <color name="order_btn_confirm">@color/red</color>
    <color name="order_btn_confirm_bg">@color/red</color>

    <!--============主界面模块==========-->

    <!--主页的home子页面的标题栏背景颜色-->
    <color name="main_home_titlebar">@color/red</color>
    <color name="main_home_titlebar_bg">@color/red</color>
    <!--主页的发现子页面的确认按钮的背景颜色-->
    <color name="main_find_btn_confirm">@color/red</color>
    <!--主页的发现子页面的确认按钮的文本颜色-->
    <color name="main_find_btn_confirm_text">@color/blue</color>
    <!--主页的发现子页面的确认按钮被按下的时候的背景颜色-->
    <color name="main_find_btn_confirm_bg_pressed">@color/red</color>
    <!--主页的发现子页面的确认按钮被按下的时候的文本颜色-->
    <color name="main_find_btn_confirm_text_pressed">@color/blue</color>

</resources>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值