Android命名規範

weixin_33785972發表於2018-03-23

1.包命名,單詞全部小寫

域名反寫+專案名稱+模組名稱,例如:

activity包: cf.paradoxie.demo.activity
實體包: cf.paradoxie.demo.bean
工具包: cf.paradoxie.demo.utils

2.介面和類命名,

單詞首字母大寫(大駝峰規則)
以下為幾種常用類的命名:

公共父類,命名以Base開頭,如:BaseActivity, BaseAdapter
activity類,命名以Activity為字尾,如:LoginActivity
fragment類,命名以Fragment為字尾,如:LoginFragment
service類,命名以Service為字尾,如:DownloadService
adapter類,命名以Adapter為字尾,如:MyListAdapter

工具類,命名以Util為字尾,如:StringUtil
介面類,命名以I為字首(來源於MVP模式),如:IUser
介面實現類,命名以Impl為字尾,如:UserImpl

3.方法命名

除開第一個單詞首字母,其餘都大寫(小駝峰規則)以下為幾種常用方法的命名:

初始化方法,命名以init開頭,例:initView
設定方法,命名以set開頭,例:setData
儲存方法,命名以save開頭,例:saveData

具有返回值的獲取方法,命名以get開頭,例:getData
通過非同步載入資料的方法,命名以load開頭,例:loadData
布林型的判斷方法,命名以is或has,或具有邏輯意義的單詞如equals,例:isEmpty

4.常用控制元件id命名縮寫

控制元件 命名 控制元件 命名

TextView    tv      
RadioGroup  group
EditText    et      
RadioButton rbtn
Button  btn     

ProgressBar progress
ImageView   iv      
CheckBox    cb
ImageButton ibtn        
Spinner spinner
ListView    lv      

ScrollView  sv
LinearLayout    ll      
RelativeLayout  rl
FramLayout  fl      
TableLayout tl


以上縮寫為代表控制元件的縮寫,其id全稱需根據配合所在佈局及其功能意義而定,縮寫_{範圍_}意義,例如:
登入按鈕:btn_login;
相對佈局的tab欄:rl_tab;
標題欄文字:tv_head_title

5.佈局 layout命名

型別{範圍}功能,範圍可選,只在有明確定義的範圍內才需要加上。
以下為幾種常用的元件型別命名:

activity_{範圍_}功能,為Activity的命名格式:activity_login

fragment_{範圍_}功能,為Fragment的命名格式

dialog_{範圍_}功能,為Dialog的命名格式

headerlist\{範圍_}功能,為ListView的HeaderView命名格式

footerlist\{範圍_}功能,為ListView的FooterView命名格式

6.strings的命名

型別{範圍}功能,範圍可選。
以下為幾種常用的命名:

頁面標題,命名格式為:title_頁面

按鈕文字,命名格式為:btn_按鈕事件

標籤文字,命名格式為:label_標籤文字

選項卡文字,命名格式為:tab_選項卡文字

訊息框文字,命名格式為:toast_訊息

編輯框的提示文字,命名格式為:hint_提示資訊

圖片的描述文字,命名格式為:desc_圖片文字

對話方塊的文字,命名格式為:dialog_文字

menu的item文字,命名格式為:action_文字

7.colors的命名

字首{控制元件}{範圍}{_字尾},控制元件、範圍、字尾可選,但控制元件和範圍至少要有一個:背景顏色,新增bg字首

文字顏色,新增text字首

分割線顏色,新增div字首

區分狀態時,預設狀態的顏色,新增normal字尾

區分狀態時,按下時的顏色,新增pressed字尾

區分狀態時,選中時的顏色,新增selected字尾

區分狀態時,不可用時的顏色,新增disable字尾

8.drawable的命名

跟以上colors的命名類似,此處多了選擇器

新增selector字尾(一般為ListView的selector或按鈕的selector)

9.動畫檔案命名

動畫型別_動畫方向

fade_in,淡入

fade_out,淡出

push_down_in,從下方推入

push_down_out,從下方推出

slide_in_from_top,從頭部滑動進入

zoom_enter,變形進入

shrink_to_middle,中間縮小

10.變數命名

只能包含字母,單詞首字母除第一個外,都為大寫,其他字母都為小寫

普通變數:mXyxy,或userBean

控制元件變數,型別為字首,功能在後面:btnLogin

11.常量命名

全部大寫,採用下劃線命名法.例如:MAX_VALUE

相關文章