几行代码看程序员的水平——Android文件命名规范

简介:

注:很简略很实用的一点总结:

资源控件命名

仅供参考,只要形成一个统一,见量知其意就可

程序员的水平,看代码规范最直接了。也就是工资的高低和你的代码质量成正比的,养成良好习惯吧!!

(一)  Layout命名

1.contentview命名:activity_功能模块.xml

例如:activity_main.xml、activity_more.xml

2.Dialog命名:dialog_描述.xml

       例如:dlg_hint.xml

2.PopupWindow命名:ppw_描述.xml

       例如:ppw _info.xml

3. 列表项命名listitem_描述.xml

       例如:listitem_city.xml

4.包含项:include_模块.xml

       例如:include_head.xml、include_bottom.xml

 

(二)  图片命名

1.       静态图片前缀_模块、前缀_模块_描述

例如:bg_main.png、ic_main_search.png

2.       动态图片前缀_模块_描述_状态、前缀_描述_状态

              例如:btn_film_buy_n.png、btn_film_buy_p.png、btn_back_n.png

       如果有多种形态如按钮等除外如btn_film_buy.xml(selector)

 

(三)  id命名(待调整??)

Xml中id的命名,建议直接根据意义命名,不必使用以上复杂的定位,因为findViewById只在某指定layout中find。或者value中建立id文件统一管理(兼容性不好)

原文作者常用:android:id="@id/tv_name"android:id="@id/listv"、android:id="@id/tv_head_title"

  个人习惯使用:android:id="@id/tvName"android:id="@id/listvName"、android:id="@id/tvHeadTitle",然后在class里的命名和id名字保持一致

(四)  字符串命名

       最好不要跟title、dialog、button等东西关系起来,直接用相同英文含义就可以了,如果下:

<string name="ok">确定</string>

<string name=" welcome_to_use">欢迎使用</string>

 

再举一些不好的例子,如下<string name="menu_ok ">确定</string>

 

(五)  控件命名

控件缩写_描述

例如:TextViewtv_name、Button btn_buy、LinearLayoutllyt_body;

 

(六)  类命名

功能模块Activity.class  功能模块Service.class

如:MainActivity.class  HuaFuBaoActivity.classAppUpgradeService.class

 

资源缩写说明

 

 

前缀

说明

ic --icon

主要用于布局和子布局的图标

bg--background

主要用于布局和子布局的背景

di--divider

主要用于分隔线,不仅包括Listview中的还包括普通布局中的线

sl--selector

主要用于某一view多种状态,listview 按钮等

cl--color

主要用于颜色值

bt--button

主要用于按钮的表示,有时我们会在ic和bt之间犹豫,简单的区分即是功能视图,如果一个view执行的时back或者confirm或者cancel的功能,则命名上则应该使用bt

 

 

 

 

后缀

说明

unit

在使用xml的tilemode来配图片时,element图片使用此后缀

nor

图片的状态,代表普通状态

hl

图片的状态,代表高亮状态

press

图片的状态,代表按下状态

select

图片的状态,代表其所占的view被选中

unselect

图片的状态,代表其所占的view没有被选中

 

 

 

 

 

 

 

 

 

 

 

组件名称对照表

 

组件名称

简写

组件名称

简写

Button

Btn(btn)

RadioButton

Rbtn(rbtn)

ImageButton

Ibtn(ibtn)

TextView

Tv(tv)

ImageView

Iv (iv)

ListView

Lv(lv)

ProgressBar

Pbar(pbar)

EditText

Edtv(et)

ScrollView

Sclv(scly)

CheckBox

Chk(chk)

RelativeLayout

Rlyt(rlyt)

LinearLayout

Llyt(llyt)

TableLayout

Tlyt(tlyt)

AbsoluteLayout

ALyt(alyt)

FrameLayout

Flyt(flyt)

 

 

 

相关文章
|
6天前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
|
2月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
170 1
|
14天前
|
Web App开发 安全 程序员
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
多年的互联网寒冬在今年尤为凛冽,坚守安卓开发愈发不易。面对是否转行或学习新技术的迷茫,安卓程序员可从三个方向进阶:1)钻研谷歌新技术,如Kotlin、Flutter、Jetpack等;2)拓展新功能应用,掌握Socket、OpenGL、WebRTC等专业领域技能;3)结合其他行业,如汽车、游戏、安全等,拓宽职业道路。这三个方向各有学习难度和保饭碗指数,助你在安卓开发领域持续成长。
42 1
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
|
12天前
|
Android开发 Swift iOS开发
探索安卓与iOS开发的差异:从代码到用户体验
【10月更文挑战第5天】在移动应用开发的广阔天地中,安卓和iOS两大平台各占半壁江山。它们在技术架构、开发环境及用户体验上有着根本的不同。本文通过比较这两种平台的开发过程,揭示背后的设计理念和技术选择如何影响最终产品。我们将深入探讨各自平台的代码示例,理解开发者面临的挑战,以及这些差异如何塑造用户的日常体验。
|
1月前
|
存储 Java Android开发
🔥Android开发大神揭秘:从菜鸟到高手,你的代码为何总是慢人一步?💻
在Android开发中,每位开发者都渴望应用响应迅速、体验流畅。然而,代码执行缓慢却是常见问题。本文将跟随一位大神的脚步,剖析三大典型案例:主线程阻塞导致卡顿、内存泄漏引发性能下降及不合理布局引起的渲染问题,并提供优化方案。通过学习这些技巧,你将能够显著提升应用性能,从新手蜕变为高手。
20 2
|
15天前
|
ARouter Android开发
Android不同module布局文件重名被覆盖
Android不同module布局文件重名被覆盖
50 0
|
2月前
|
JavaScript 前端开发 Java
FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
IT寒冬使APP开发门槛提升,安卓程序员需转型。选项包括:深化Android开发,跟进Google新技术如Kotlin、Jetpack、Flutter及Compose;研究Android底层框架,掌握AOSP;转型Java后端开发,学习Spring Boot等框架;拓展大前端技能,掌握JavaScript、Node.js、Vue.js及特定框架如微信小程序、HarmonyOS;或转向C/C++底层开发,通过音视频项目如FFmpeg积累经验。每条路径都有相应的书籍和技术栈推荐,助你顺利过渡。
55 3
FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
|
2月前
|
JSON JavaScript 前端开发
Android调用Vue中的JavaScript代码
Android调用Vue中的JavaScript代码
26 3
|
2月前
|
开发工具 git 索引
repo sync 更新源码 android-12.0.0_r34, fatal: 不能重置索引文件至版本 ‘v2.27^0‘。
本文描述了在更新AOSP 12源码时遇到的repo同步错误,并提供了通过手动git pull更新repo工具来解决这一问题的方法。
96 1
|
2月前
|
存储 监控 数据库
Android经典实战之OkDownload的文件分段下载及合成原理
本文介绍了 OkDownload,一个高效的 Android 下载引擎,支持多线程下载、断点续传等功能。文章详细描述了文件分段下载及合成原理,包括任务创建、断点续传、并行下载等步骤,并展示了如何通过多种机制保证下载的稳定性和完整性。
71 0