android 编程代码规范

11年前

                学习android开发已经有很长时间了,但是有时代码却很少用规范的模式进行书写,下面就简要的总结了自己学习的代码规范。

一、关于一些常量值资源的书写规范

1.颜色值

颜色值有RGB和透明信息Alpha组成,以#开头, 形式有 #RGB                        #ARGB                        #RRGGBB                    #AARRGGBB

一般存储于res/values/colors.xml 中   必须包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中的使用是R.color.black xml中的使用是“@color/black(”                black是-----> (颜色名)        

<?xml version="1.0" encoding="utf-8"?>  <!-- 必须添加的头文件 -->  <resources>        <!-- 颜色值资源的定义 -->      <color name="black">#000000</color>      <color name="grey">#C0C0C0</color>      <color name="white">#FFFFFF</color>      <color name="orange">#FF6100</color>    </resources>

 

  2.字符串和格式化文本

一般存储于res/values/strings.xml 中   必须包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中使用是R.string.me(字符串名称)XML中使用“@string/me(字符串名称)”

<?xml version="1.0" encoding="utf-8"?>  <resources>        <string name="hello">Hello World, AndroidFromatActivity!</string>      <string name="app_name">AndroidFromat</string>      <string name="me">王杰</string>      <string name="QQ号码">1150580768</string>      <string name="联系电话">15290336267</string>    </resources>

 

3.大小值(px、in、mm、pt、dp、sp)

px(Pixel  像素)对应是实际屏幕是像素

in(Inch 英寸)基于实际屏幕的物理大小

mm(Millimeter 毫米) 基于实际屏幕的物理大小

dp或者dip(Density-independent Pixel 密度无关像素)      基于屏幕的的物理点阵密度

sp(Scale-independent Pixel 比例无关像素)与dp类似,不同之处,该单位可以根据用户的字体大小选择进行比例调节

一般存储于res/values/dimens.xml 中   必须包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中使用是R.dimen.test_px(字符串名称) XML中使用“@dimen/test_px(字符串名称)”

 

<?xml version="1.0" encoding="utf-8"?>  <!-- 必须添加的头文件 -->  <resources>        <!-- 大小值资源的定义 -->        <dimen name="test_px">10px</dimen>      <dimen name="test_in">10in</dimen>      <dimen name="test_mm">10mm</dimen>      <dimen name="test_pt">10pt</dimen>      <dimen name="test_dp">10dp</dimen>      <dimen name="test_dip">10dip</dimen>      <dimen name="test_sp">10sp</dimen>    </resources>

4.数组资源

支持字符串(string)和整形(integer)的数组

一般存储于res/values/arrays.xml 中   必须包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中使用是R.array.select_week(字符串名称)XML中使用“@array/select_week(字符串名称)”

<?xml version="1.0" encoding="utf-8"?>  <!-- 必须添加的头文件 -->  <resources>        <!-- 数组资源的定义 -->      <string-array name="select_week">          <item> 星期一</item>          <item> 星期二</item>          <item> 星期三</item>          <item> 星期四</item>          <item> 星期五 </item>          <item> 星期六</item>          <item> 星期日</item>      </string-array>        <integer-array name="select_classtime">          <item>1</item>          <item>2</item>          <item>3</item>          <item>4</item>          <item>5</item>      </integer-array>    </resources>
5.界面样式(皮肤)和主题

     

一般存储于res/values/styles.xml 中   必须包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中使用是R.style.style_parent(字符串名称)XML中使用“@style/style_parent(字符串名称)”

<?xml version="1.0" encoding="utf-8"?>  <!-- 必须添加的头文件 -->  <resources>        <!-- 样式资源的定义 黑体 20dp大小 子样式的字体是橙色 -->        <style name="style_parent">          <item name="android:textStyle">bold</item>          <item name="android:textSize">20dp</item>      </style>        <style name="style_child" parent="@style/style_parent">          <item name="android:textColor">#FF6100</item>      </style>        <!-- 主题资源的定义 -->        <style name="theme_dialog" parent="android:Theme.Dialog">          <item name="android:background">#F0FFFF</item>          <item name="android:textColor">#FF6100</item>          <item name="android:textSize">20dp</item>      </style>          <style name="theme_panel" parent="android:Theme.Panel">          <item name="android:background">#00FFFF</item>          <item name="android:textColor">#FF6100</item>          <item name="android:textSize">20dp</item>      </style>    </resources>

6.动画资源

一般存储于res/anim/animation.xml 中   可以不用包含的头文件(<?xml version="1.0" encoding="utf-8"?>)和一个根节点(<resources></resources>)

代码中使用是R.anim.animation文件名)XML中使用“@anim/animation文件名)”

 

<?xml version="1.0" encoding="utf-8"?>  <!-- 动画资源可以不添加的头文件 -->  <resources>        <!-- 动画资源的定义 -->      <set xmlns:android="http://schemas.android.com/apk/res/android" >            <!-- 移动动画 -->          <translate              android:duration="3000"              android:fromXDelta="50%p"              android:toXDelta="0" />          <!-- 透明度 -->          <alpha              android:duration="3000"              android:fromAlpha="0.0"              android:toAlpha="1.0" />          <!-- 旋转 -->          <rotate              android:duration="3000"              android:fromDegrees="-360"              android:pivotX="50%"              android:pivotY="50%"              android:toDegrees="0" />          <!-- 缩放 -->          <scale              android:duration="3000"              android:fromXScale="50"              android:fromYScale="50"              android:toXScale="100"              android:toYScale="1000" />      </set>    </resources>

7.菜单资源

一般存储于res/menu/menu_option.xml 中   同文件一般是自动生成的<menu xmlns:android="http://schemas.android.com/apk/res/android"></menu>

代码中使用是R.menu.menu_options文件名)XML中使用“@anim/menu_options文件名)”

<menu xmlns:android="http://schemas.android.com/apk/res/android" >  <!-- menu 资源选项 -->      <group>          <item              android:id="@+id/menuhelp"              android:icon="@drawable/help"              android:title="help">          </item>          <item              android:id="@+id/menuabout"              android:icon="@drawable/about"              android:title="about">          </item>      </group>      <group>          <item              android:id="@+id/menuadd"              android:icon="@drawable/add"              android:title="add">          </item>          <item              android:id="@+id/menuexit"              android:icon="@drawable/exit"              android:title="exit">          </item>      </group>    </menu>

8.文件资源

文件资源分为XML文件、原生文件资源

xml文件资源一般位于res/xml/test.xml 这里的xml文件可以不遵循android的规范术语

原生文件资源一般位于res/raw/demo.txt等等资源类型的文件

9.备选资源

比如,横屏和竖屏的图片处理: 横向图片存放:res/drawable-land文件夹中 纵向图片:res/drawable-port文件夹中

10.系统资源类型的定义说明

android系统资源类型
资源值类型 定义说明
动画 定义于R.anim类中
数组 定义于R.array类中
属性值 定义于R.attr类中
颜色值 定义于R.color  类中
大小值 定义于R.dimen  类中
绘制用 定义于R. drawable  类中
ID 定义于R. id类中
整数 定义于R.integer类中
布局 定义于R.layout类中
字符串 定义于R.string类中
样式和主题 定义于R.style类中

11.android Dos下是命令行

1、adb 工具

连接模拟器

adb shell  

上传文件到模拟器中

adb push <本地路径><远程文件路径>

从模拟器中下载文件

adb pull <远程文件路径> <本地路径>

安装包文件管理

adb install <本地包文件>

移除包文件

adb   uninstall <包名>

2、sqlite3 工具

打开或者创建数据库

sqlite3 <数据库路径>

查看数据库版本

sqlite3 <version>

3、keytool 工具

创建密钥库文件

keytool -genkey -keystore<密钥库路径> -alias<密钥库别名>-keyalg<密钥算法>

列举密钥库信息

keytool -list -keystore <密钥库路径>