Android 命名规范(以及自己的一些小经验)

            在工作中,有许多刚入行的小白,不懂得命名,

                例如用汉语拼音命名,中文版英语等!

            命名方式非常重要,小白需要多学习一下,

                以下是参照 《阿里开发手册》总结的知识点

                以及自己的开发经验的小总结。 

一、资源文件需带模块前缀。

             所有可以从中读取出需要的资源的文件,可以称之为“资源文件”。

             资源的类型可以是图片、音频、视频、文字资源,或者其他可以在计算机中展示的内容等等。

             这里的资源文件就拿png图片举例子:(具体详情  请看下面第三条 所示)

             例如:

    local_icon_usb_normal.png  // 本地 USB 图标 正常显示
    local_icon_usb_press.png   // 本地 USB 图标 按下

二、布局文件 的 命名方式。

布局命名方式(以开头)
Activitymodule_activity
Fragmentmodule_fragment
Dialogmodule_dialog
includemodule_include
ListView 的 行module_list_item
RecyclerView 的 itemmodule_recycle_item
GridView 的 行module_grid_item

三、 drawable命名

        drawable 资源名称以小写单词+下划线的方式命名,根据分辨率不同存放在不同的 drawable 目录下,

        建议只使用一套,例如 drawable-xhdpi。     

个人总结:

        因为我是做车机项目 我写的项目都是宽高定死的  所以 一般把 png 等格式图片放入到   drawable-nodpi 文件夹中。

        drawable-nodpi 介绍:把一些不能被拉伸的图片放在 drawable-nodpi 中,此图片将不会被放大,以原大小显示。 

        采用规则如下:

            模块名_业务功能描述_控件描述_控件状态限定词如:

    module_login_btn_pressed
    module_tabs_icon_home_normal

四、anim命名

       anim资源名称以小写单词+下划线的方式命名,采用以下规则:   模块名_逻辑名称_[方向|序号]

       tween 动画资源:尽可能以通用的动画名称命名,如:           

    module_fade_in 

    module_fade_out ,

    module_push_down_in (动画+方向);

       frame 动画资源:尽可能以   模块+功能命名+序号  。如:

     module_loading_grey_001

五、color 命名

        color 资源使用 #AARRGGBB 格式,写入 module_colors.xml 文件中,命名格式采用以下规则:

       模块名_逻辑名称_颜色 ,如:(关于AA 透明度 在小生的其他文章中有所介绍)

    <color name="module_btn_bg_color">#33b5e5e5</color>

六、dimen 命名

       dimen 资源以小写单词+下划线方式命名,写入 module_dimens.xml 文件中,采用以下规则:

       模块名_描述信息,如:

    <dimen name="module_horizontal_line_height">1dp</dimen>

七、style 命名

        style 资源采用小写单词+下划线方式命名,写入 module_styles.xml 文件中,采用以下规则:

       父style 名称.当前 style 名称,如:           

    <style name="SeekBarLayout.SeekBar">
        <item name="android:layout_width">match_parent</item> // 宽
        <item name="android:layout_height">wrap_content</item> // 高
        <item name="android:layout_centerVertical">true</item> // 将控件置于垂直方向的中心位置
        <item name="android:maxHeight">@dimen/px_4</item> // 设置最大的高
        <item name="android:minHeight">@dimen/px_2</item> // 设置最小的高
        <item name="android:progressDrawable">@drawable/bg_seekbar_thumb</item> 
        // 设置进度中的背景颜色和进度颜色
        <item name="android:thumb">@null</item> // 设置拖动条的拖动按钮的样式图片
    </style>

八、string 命名

        string 资源文件或者文本用到字符需要全部写入 module_strings.xml 文件中,

       字符串以小写单词+下划线的方式命名,采用以下规则:


       模块名_逻辑名称,如:   

    moudule_login_tips

    module_homepage_notice_desc

       

九、Id 资源命名

        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 目录

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值