Android:代码的规范
2016-06-18 23:18
246 查看
代码规范
1.书写规范
编码方式统一用UTF-8. Android Studio默认已经是UTF-8,只要不去改动它就可以了一个方法最多不要超过40行代码
文字大小的单位统一用 sp,元素大小的单位统一用 dp
应用中字符串统一在 strings.xml 中定义,然后在代码和布局文件中引用
颜色值统一在 colors.xml 中定义,然后在代码和布局文件中引用。另外,不要在代码和布局文件中引用系统的颜色,除了透明
2.命名规范
1. 包命名
域名反写+项目名称+模块名称,全部单词用小写字母如:www.shbj.com —– 写成: com.shbj.mydemo.home
2. 类和接口命名
使用大驼峰规则,用名词或名词词组命名,每个单词的首字母大写activity类,以Activity结尾,如:MainActivity
fragment类,以Fragment结尾,如:HomeFragment 或 Home_Fragment
service类,以Service结尾,如:DownloadService
adapter类,以Adapter结尾,如:GoodsAdapter
工具类,以Util结尾,如:JsonUtil
模型类,以Entity,Bean结尾,如:GoodEntity,GoodBean
接口实现类,以 Impl 结尾或大写 I 开头,如:AppImpl或者IApp
3. 方法命名
使用小驼峰规则,用动词命名,第一个单词的首字母小写,其他单词的首字母大写初始化方法,以init开头,例如:initView
按钮点击方法,以to开头,如:toLogin
设置方法,以set开头,如:setData
具有返回值的获取方法,以get开头,如:getData
通过异步加载数据的方法,以load开头,如:loadData
布尔型的判断方法,以is或has,或具有逻辑意义的单词如equals 开头,如:isEmpty
4. 控件缩写
控件 | 缩写 | 控件 | 缩写 |
---|---|---|---|
TextView | txt | EditText | edt |
Button | btn | ImageButton | ibtn |
ImageView | img | ListView | list |
LinearLayout | llayout | RelativeLayout | rlayout |
RadioGroup | group | RadioButton | rbtn |
ProgressBar | progress | SeekBar | seek |
CheckBox | chk | Spinner | spinner |
TableLayout | table | TableRow | row |
ScrollView | scroll | SearchView | search |
TabHost | host | TabWidget | widget |
5. 常量命名
单词字母全部大写,单词之间用下划线分开public static final int PAGE_SIZE = 20;
6. 变量命名
{范围描述+}意义描述+类型描述的组合,用驼峰式命名法则,首字母小写private TextView mTitleTxt; //标题栏的标题 private Button loginBtn; // 登录按钮 private GoodEntity goodEntity;
7. 控件id命名
控件缩写_{范围_}意义,范围可选,只在有明确定义的范围内才需要
<!-- 这是标题栏的TextView --> <TextView android:id="@+id/txt_title"; android:layout_width="match_parent" android:layout_height="wrap_content"/> <!-- 这是登录按钮 --> <Button android:id="@+id/btn_login"; android:layout_width="match_parent" android:layout_height="wrap_content"/>
8. layout命名
字母必须全小写且中间不能有空格,否则会报错组件类型_{范围_}功能,范围可选,只有在明确定义的范围内才需要
activity_{范围_}功能,为Activity的命名格式:LoginActivity ---> activity_login fragment_{范围_}功能,为Fragment的命名格式:LoginFragment ---> fragment_login dialog_{范围_}功能,为Dialog的命名格式 item_list_{范围_}功能,为ListView的item命名格式 item_grid_{范围_}功能,为GridView的item命名格式 header_list_{范围_}功能,为ListView的HeaderView命名格式 footer_list_{范围_}功能,为ListView的FooterView命名格式
9. strings的命名
类型_{范围_}功能,范围可选
页面标题,命名格式:title_页面
按钮文字,命名格式:btn_按钮事件
标签文字,命名格式:label_标签文字
选项卡文字,命名格式:tab_选项卡文字
消息框文字,命名格式:toast_消息
编辑框提示文字,命名格式:hint_提示信息
图片的描述文字,命名格式:desc_图片文字
对话框的文字,命名格式:dialog_文字
menu的item文字,命名格式:action_文字
10. colors的命名
前缀{_控件}{_范围}{_后缀},控件、范围、后缀可选,但控件和范围至少要有一个
背景颜色,添加 bg 前缀
文本颜色,添加 text 前缀
分割线颜色,添加 div 前缀
区分状态时,默认状态的颜色,添加 normal 后缀
区分状态时,按下时的颜色,添加 pressed 后缀
区分状态时,选中时的颜色,添加 selected 后缀
区分状态时,不可用时的颜色,添加 disable 后缀
11.drawable的命名
前缀{_控件}{_范围}{_后缀},控件、范围、后缀可选,但控件和范围至少要有一个
图标类,添加 ic 前缀
背景类,添加 bg 前缀
分割类,添加 div 前缀
默认类,添加 def 前缀
区分状态时,默认状态,添加 normal 后缀
区分状态时,按下时的颜色,添加 pressed 后缀
区分状态时,选中时的颜色,添加 selected 后缀
区分状态时,不可用时的颜色,添加 disable 后缀
多种状态的,添加 selector 后缀(一般为ListView的selector或按钮的selector)
12.动画文件命名
动画类型_动画方向fade_in ,淡入
fade_out ,淡出
push_down_in,从下方推入
push_down_out,从下方推出
slide_in_from_top,从头部滑动进入
zoom_enter,变形进入
shrink_to_middle,中间缩小
其他
1.标识符命名法(熟悉)
驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写
下划线命名法:单词与单词之间用下划线做间隔
2.重要几点(熟练使用)
接口,类的命名:使用帕斯卡(pascal)命名法,每个单词首字母都要大写[b]方法名:驼峰命名法,除首单词外,其余所有单词首字母都要大写
成员变量
3.1.记得加上成员修饰符
// 修饰符的权限 private //只能被当前类的方法访问 protected //可以被所有子类访问,子类没有在同一个包中也可以访问 public //可以被任何类访问 default //不加任何修饰符就是默认。可以被同一个包下的所有类访问;如果子类没有在同一个包下,则不能访问
3.2.命名规范,一般成员变量要在变量前加上一个 m ,如:
private List<CartBean> mDatas; private Context mContext; boolean mEdit; private CardDao mcartDao;
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories