編輯:關於Android編程
常量名命名模式為CONSTANT_CASE,全部字母大寫,用下劃線分隔單詞
常量一般統一放置在config目錄下的AppConfig文件內
同類型的常量,通常放置在同一個內部類中 示例參考 com.xiaoq.sample.mylib.code包下面的Appconfig非公有,非靜態字段命名以m開頭。
int mPackagePrivate;
private int mPrivate;
protected int mProtected;
靜態字段命名以s開頭。
private static MyClass sSingleton;
公有非靜態字段命名以p開頭。
public int pField;
公有靜態字段(全局變量)命名以g開頭。
public static int gField;
UI控件變量命名參考 附錄的 UI控件縮寫表
3.量詞變量後綴
First 一組變量中的第一個 Last 一組變量中的最後一個 Next 一組變量中的下一個變量 Prev 一組變量中的上一個 Cur 一組變量中的當前變量。 例如:mCustomerStrFirst mCustomerStrLast
4.集合添加如下後綴:List、Map、Set
5.數組添加如下後綴:Arr
6.臨時變量
臨時變量通常被取名為i,j,k,m和n,它們一般用於整型; c,d,e,它們一般用於字符型;
資源文件命名規范
1.資源布局文件(XML文件(layout布局文件)):
activity_main.xml frament_main.xml Dialog命名:dialog_描述.xml,例如:dialog_hint.xml PopupWindow命名:ppw_描述.xml,例如:ppw_info.xml 列表項命名:item_描述.xml
通用列表項:item_city.xml listview:list_item_city.xml gridview:grid_item_city.xml recyclerview:recycler_item_city.xml 自定義類似listview:TabLayout:tab_item_city.xml 包含項命名:模塊_(位置).xml
位置:top、 btm、 left、 right 例如:activity_main_btm.xml、fragment_main_top.xml 通用的包含項命名采用:base_(位置)_項目名稱縮寫_描述.xml 描述:title、 content、 header、 footer 例如:base_top_xxxx_title.xml、base_btm_xxxx_header.xml 例如:全項目通用 base_top.xml base_btm.xml 自定義Widget(布局命名)
widget_ + View功能描述/模塊 + 類型(list/info) + .xml 例如:訂單詳情內的商品列表 widget_order_detail_goods_list.xml 特殊自定義組件/控件
例如: com.xiaoq.widget.tips.TipsManager的loading布局/empty布局/重試布局 通用:base_tips_loading.xml、base_tips_empty、base_tips_retry 各個activity內:activity_描述_tips_loading.xml、activity_main_tips_loading.xml fragment:fragment_main_tips_loading.xml view:activity_main_xxx_view_tips_loading.xml、fragment_main_xxx_view_tips_loading.xml,xxx 為view的描述
2.資源文件(圖片mipmap及drawable文件夾下):
全部小寫,采用下劃線命名法,加前綴區分 通用規則
名稱
功能
bg_head
背景圖片使用bg_功能_說明
def_search_cell
默認圖片使用def_功能_說明
ic_more_help
圖標圖片使用ic_功能_說明
seg_list_line
具有分隔特征的圖片使用seg_功能_說明 (false)不可用效果
sel_ok
選擇圖標使用sel_功能_說明
- 命名模式:可加後綴 _small 表示小圖, _big 表示大圖,邏輯名稱可由多個單詞加下劃線組成
- 采用以下規則:
- 用途_模塊名_邏輯名稱
- 用途_模塊名_顏色
- 用途_邏輯名稱
- 用途_顏色
- 說明:用途也指控件類型(具體見UI控件縮寫表)
- 例如:
- btn_main_home.png 按鍵
- divider_maket_white.png 分割線
- btn_red.png 紅色按鍵
- btn_red_big.png 紅色大按鍵
- divider_white.png 白色分割線
- 如果有多種形態如按鈕等除外如 btn_xx.xml(selector)
normal、pressed、disbled、checked 較常用
名稱
功能
btn_xx
按鈕圖片使用btn_整體效果(selector)
btn_xx_normal
按鈕圖片使用btn_正常情況效果
btn_xx_pressed
按鈕圖片使用btn_點擊時候效果
btn_xx_focused
state_focused聚焦效果
btn_xx_disabled
state_enabled (false)不可用效果
btn_xx_checked
state_checked選中效果
btn_xx_selected
state_selected選中效果
btn_xx_hovered
state_hovered懸停效果
btn_xx_checkable
state_checkable可選效果
btn_xx_activated
state_activated激活的
btn_xx_windowfocused
state_window_focused
3.動畫文件(anim文件夾下):
全部小寫,采用下劃線命名法,加前綴區分。 具體動畫采用以下
規則:模塊名_邏輯名稱 例如:
refresh_progress.xml market_cart_add.xml market_cart_remove.xml 普通的tween動畫采用如下表格中的命名方式,前面為動畫的類型,後面為方向
動畫命名例子
規范寫法
fade_in
淡入
fade_out
淡出
push_down_in
從下方推入
push_down_out
從下方推出
push_left
推向左方
slide_in_from_top
從頭部滑動進入
zoom_enter
變形進入
slide_in
滑動進入
shrink_to_middle
中間縮小
4.styles.xml文件的命名
規則:模塊名+邏輯名稱
main_tabBottom order_detail_goodsItem order_list_goodsImg
5. layout中的id命名
命名模式為:View縮寫_view的邏輯名稱,可以使用AndroidStudio的插件Android Studio Prettify 自動生成findViewById 例如:tv_Sender_Mobile(展示聯系人手機的TextView) 可參考 com.xiaoq.sample.mylib.code.CodeActivity 當然,全部小寫的命名是最標准的,不過為了要適應Prettify插件自動生成滿足要求的局部變量,調整為小駝峰命名法,並用下劃線分割
附錄
注意
其他未在文檔內標准的規范則以AndroidStudio自動生成的為准
UI控件縮寫表
控件
縮寫
例子
LinearLayout
ll
llFriend或者mFriendLL
RelativeLayout
rl
rlMessage或mMessageRL
FrameLayout
fl
flCart或mCartFL
TableLayout
tl
tlTab或mTabTL
Button
btn
btnHome或mHomeBtn
ImageButton
ibtn
btnPlay或mPlayIBtn
TextView
tv
tvName或mNameTV
EditText
et
etName或mNameET
ListView
lv
lvCart或mCartLV
ImageView
iv
ivHead或mHeadIV
GridView
gv
gvPhoto或mPhotoGV
常見英文單詞縮寫
名稱
縮寫
icon
ic (主要用在app的圖標)
color
cl(主要用於顏色值)
divider
di(主要用於分隔線,不僅包括Listview中的divider,還包括普通布局中的線)
selector
sl(主要用於某一view多種狀態,不僅包括Listview中的selector,還包括按鈕的selector)
average
avg
background
bg(主要用於布局和子布局的背景)
buffer
buf 緩沖
control
ctrl
delete
del
document
doc
error
err
escape
esc
increment
inc 增量
infomation
info
initial
init
image
img
Internationalization
I18N 國際化
length
len
library
lib
message
msg
password
pwd
position
pos
server
srv
string
str
temp
tmp
window
wnd(win)
一、基本使用要點回顧Volley框架在請求網絡圖片方面也做了很多工作,提供了好幾種方法.本文介紹使用ImageLoader來進行網絡圖片的加載. ImageLoader的
上一篇,我們從源碼的角度分析了View的事件分發過程,這篇我們從實例的角度來看看不同實例下具體的輸出會是什麼樣子的呢?好的,我們開始吧!同樣我們的測試布局文件: 
本文實例講述了Android上下文菜單用法。分享給大家供大家參考。具體如下:上下文菜單不同於選項菜單,選項菜單服務於Activity,而上下文菜單則是注冊到某個View對
前言新版本ShareSDK的分享和短信驗證,按官網的文檔,都需要添加一個標簽,而分享和短息驗證的這個標簽內容都一樣。會沖突。解決辦法:分享用舊版本,短信驗證用新版本。後面