备注:一下内容为本人手工翻译官方文档注解,若有翻译不到位的地方,欢迎批评指正;html
ADT(Android开发工具)是Eclipse的插件,它提供了一套与Eclipse IDE集成的工具。它可让您访问许多功能,帮助您快速开发Android应用程序。ADT提供对许多命令行SDK工具的GUI访问以及用于快速原型设计,设计和构建应用程序用户界面的UI设计工具。java
由于ADT是Eclipse的插件,您能够得到一个完善的IDE的功能,以及与ADT捆绑在一块儿的Android特有功能。如下介绍Eclipse和ADT的重要功能:android
-
集成的Android项目建立,构建,打包,安装和调试
-
ADT将许多开发工做流任务集成到Eclipse中,方便您快速开发和测试您的Android应用程序。
-
SDK工具集成
-
许多
SDK工具集成到Eclipse的菜单,透视图中,或做为ADT运行的后台进程的一部分。
-
Java编程语言和XML编辑器
-
Java编程语言编辑器包含常见的IDE功能,例如编译时语法检查,自动完成和Android框架API的集成文档。
ADT还提供自定义的XML编辑器,可以让您在基于表单的UI中编辑Android特定的XML文件。图形布局编辑器容许您使用拖放界面设计用户界面。
-
Android框架API的集成文档
-
您能够经过将鼠标悬停在类,方法或变量上来访问文档。
您能够从命令行启动或运行的许多工具集成到ADT中。他们包括:shell
- Traceview:容许您配置程序的执行(Window> Open Perspective> Traceview)。
- android:提供对Android SDK Manager和AVD Manager的访问。其余
android
功能(如建立或更新项目(应用程序和库))集成在整个Eclipse IDE中。
- 层次查看器:容许您可视化应用程序的视图层次结构以找到低效(Window> Open Perspective> Hierarchy Viewer)。
- 像素完美:让您仔细检查您的UI,以帮助设计和构建。(Window> Open Perspective> Pixel Perfect)。
- DDMS:提供调试功能,包括:屏幕捕获,线程和堆信息以及logcat(Window> Open Perspective> DDMS)。
- adb:提供从开发系统访问设备。
adb
集成到ADT中的一些功能, 如项目安装(Eclipse运行菜单),文
- 件传输,设备枚举和logcat(DDMS)。您必须
adb
从命令行访问更高级的功能,如shell命令。
- ProGuard:容许代码混淆,缩小和优化。若是启用它,ADT将ProGuard做为构建的一部分进行集成。
代码编辑器
除了Eclipse的标准编辑器功能以外,ADT还提供自定义XML编辑器,以帮助您以基于表单或图形模式建立和编辑Android清单,资源,菜单和布局。双击Eclipse软件包资源管理器中的XML文件将打开相应的XML编辑器。编程
注意:您能够在图形模式和XML标记模式下编辑Android特定的XML文件(如布局或清单)。您能够在每一个自定义XML编辑器底部的两个选项卡之间切换这些模式。canvas
另外,一些没有自定义编辑器的特殊文件类型,例如可绘制,动画和颜色文件提供了编辑加强功能,如XML标签完成。app
ADT提供如下基于表单的XML编辑器:框架
-
图形布局编辑器
-
使用拖放界面编辑和设计您的XML布局文件。布局编辑器也会渲染您的界面,为您设计布局时提供预览。当您打开具备声明的视图(一般声明为)的XML文件时,将调用此编辑器
res/layout
。有关详细信息,请参阅
图形布局编辑器。
-
Android清单编辑器
-
使用简单的图形界面编辑Android清单。打开
AndroidManifest.xml
文件时会调用此编辑器。
-
菜单编辑器
-
使用简单的图形界面编辑菜单组和项目。当您使用
<menu>
声明(一般位于
res/menu
文件夹中)打开XML文件时,将调用此编辑器。
-
资源编辑
-
用简单的图形界面编辑资源。当您打开
<resources>
标签声明的XML文件时,将调用此编辑器。
-
XML资源编辑器
-
使用简单的图形界面编辑XML资源。打开XML文件时会调用此编辑器。
资源连接加强
除了Eclipse的正常代码编辑功能以外,ADT还提供对Android开发体验的加强功能,可以让您快速跳转到各类类型的资源(如字符串或布局文件)的声明。您能够经过按住控制键并单击如下项目来访问这些加强功能:编程语言
- 资源标识符(例如
R.id.button1
)跳转到视图的XML定义。
R.java
文件中的声明,如public static final int Button01=0x7f050000"
跳转到相应的XML定义。
- 清单中的活动或服务定义,如
<activity android:name=".TestActivity">
跳转到相应的Java类。您能够从活动定义(或服务定义)跳转到相应的Java类。
- 您能够跳转到任何值定义(例如
@string:foo
),不管在哪一个XML文件中定义了“foo”。
- 任何基于文件的声明,如
@layout/bar
打开文件。
- 非XML资源,例如
@drawable/icon
,为给定的文件类型启动Eclipse的默认应用程序,在这种状况下,它是一个图像。
@android
命名空间资源打开SDK安装区域中的资源。
- XML布局中的自定义视图,如
<foo.bar.MyView></foo.bar.MyView>
或<view class="foo.bar.MyView">
)跳转到相应的自定义视图类。
- 诸如
@android:string/ok
或android.R.string.id
Java代码之类的XML属性打开声明字符串的文件。执行此操做时,将打开XML选项卡,而不是基于表单的编辑器。
图形布局编辑器
ADT提供了许多功能,容许您设计和构建应用程序的用户界面。许多这些功能都在图形布局编辑器中,您能够经过在Eclipse中打开一个应用程序的XML布局文件来访问它们。编辑器
图形布局编辑器是用于视觉设计和构建UI的主屏幕。它分为如下几部分:
-
帆布
-
编辑的中间是画布。它提供了您的布局的渲染视图,并支持直接从调色板拖放UI小部件。您能够选择用于在画布中呈现项目的平台版本。每一个平台版本都有本身的外观和感受,这可能与其余平台版本相似或大相径庭。画布为当前选择的平台版本呈现适当的外观和感受。此平台版本不须要与应用程序所针对的版本相同。
画布还在布局操做栏中提供上下文相关的操做,例如调整布局边距和方向。布局操做栏根据画布中选定的UI元素显示可用的操做。
-
大纲
-
编辑器的右侧是大纲视图。它显示您的布局的分层视图,您能够在其中执行诸如从新排列视图的操做。大纲视图显示与画布相似的功能,但将其布局显示在有序列表中,而不是呈现的预览。
-
调色板
-
编辑器的左侧是调色板。它提供了一组可拖动到画布上的小部件。调色板显示了小部件的预览,以便于查找所需的UI小部件。
-
配置选择器
-
编辑器的顶部是配置选择器。它提供了更改布局的渲染模式或屏幕类型的选项。''
-
帆布和轮廓视图
画布是您能够从调色板拖放UI小部件以设计布局的区域。画布根据您在配置选择器中指定的所选平台版本,屏幕方向以及当前选定的主题等因素,提供了布局的渲染预览。您还能够将项目拖放到大纲视图中,这将在布局列表中显示布局。大纲视图显示了与画布大体相同的功能,但提供了另外一种组织方法,有利于排序和快速选择项目。当您右键单击画布或大纲视图中的特定项目时,能够访问上下文相关菜单,该菜单容许您修改布局或视图的如下属性:
-
查看和布局属性
-
当您右键单击画布或大纲视图中的视图或布局时,它将显示一个上下文相关菜单,可以让您设置如下内容:
- 视图或布局的ID
- 视图的文字
- 布局宽度
- 布局高度
- 属性如alpha或可点击
-
动画预览和创做
-
若是您的布局或视图是动画的,您能够直接在画布中预览动画(当您在配置选择器中选择Android 3.0或更高版本做为平台版本)时。右键单击画布中的项目,而后选择
播放动画。若是动画未与项目相关联,则菜单中可使用一个选项来建立。
查看动画功能的细分,了解更多信息。
-
提取为包含
-
您能够将当前布局的部分提取到本身的布局文件中,而后您可使用单行XML包含在任何布局中。有关详细信息,请参阅
布局重构支持。
-
其余画布功能
画布具备在大纲视图中不可用的附加功能:
- 使用布局操做栏编辑视图:上下文相关的布局操做栏容许您编辑视图在UI中的布局方式。可用的操做取决于当前选定的视图及其父布局。一些常见的操做包括切换视图的填充模式和指定边距。例如,若是你选择
Button
在LinearLayout
,你看相关的行动LinearLayout
,如切换到横向和纵向布局之间进行切换,而且切换控制是否其子沿着它们的文本基线对齐。您还将看到工具栏操做来控制孩子的各个布局属性,例如孩子是否应伸展以匹配其父级的宽度和高度,下拉动做设置孩子的布局重力,
- 在当前上下文中编辑嵌套布局:若是要编辑包含其余布局的布局,则能够在包含布局的布局中编辑包含的布局。
- 预览拖放位置:当您将UI小部件拖放到画布上时,标尺标记会显示UI窗口小部件的大体位置,具体取决于布局的类型,例如
RelativeLayout
或LinearLayout
。
- 预览动画:当您在配置栏中为平台版本选择Android 2.1或更高版本时,能够预览视图和布局动画。
- 实时渲染布局:根据平台版本(包括适当的系统和操做栏)尽量准确地呈现布局。
- 支持片断:片断能够在与包含片断的布局相同的屏幕中呈现。

图2.布局编辑器的画布部分显示应用程序的渲染预览

图3.显示当前布局结构的大纲视图'
调色板
调色板包含能够拖放到画布上并添加到布局的UI小部件。托盘将窗口小部件分类并显示呈现的预览,以便更容易查找。调色板的主要特色包括:
- 渲染预览的不一样模式包括:仅图标,图标和文字,小预览,小预览和预览(以实际大小呈现)。预览仅适用于使用最新版本的Android 2.1(API级别7)或更高版本呈现的布局。
- 您的项目或图书馆项目中的自定义视图将添加在自定义视图类别下。
- 按字母顺序或按类别排列UI小部件。

图4.显示可用UI小部件的调色板
配置选择器
配置选择器容许您为不一样的状况建立和配置不一样的布局配置,例如一个用于横向,一个用于纵向模式。您能够为布局的每一个配置设置如下选项:
- 屏幕类型组合框:经常使用设备配置的预约义屏幕设置。您还能够经过选择自定义...来建立本身的。
- 屏幕方向组合框:纵向或横向屏幕方向。
- 主题组合框:预约义的主题或您建立的自定义主题。
- 平台组合框:用于渲染画布和调色板以及显示适当主题的平台版本。
- 自定义布局组合框:根据设备的当前状态,能够根据设备的当前状态,选择不一样版本的相同布局的区域设置,停靠和时间组合框。您可使用“ 建立 ”按钮建立新版本的布局。

布局重构支持
在图形和XML布局编辑器中,有许多功能能够帮助您快速重构布局。如下列表描述了主要的重构支持:
-
更改布局
-
这可让您随时更改布局,并为您从新绘制画布。您能够将此重构应用于任何布局,若是可能,布局将转换为新类型。在许多状况下,布局的XML元素的打开和关闭标签随着ID属性及其引用的变化而改变。可是,对于某些受支持的类型,ADT会尝试保留布局,例如将a更改
LinearLayout
为a
RelativeLayout
。
-
更改窗口小部件
-
这容许您选择一个或多个小部件并将其转换为新的小部件类型。除了更改元素名称以外,它还会删除新的窗口小部件类型不支持的任何属性,并添加新窗口小部件类型所需的任何强制属性。若是窗口小部件的当前ID包含其ID中的当前窗口小部件类型(例如,
<Button>
命名的窗口小部件
"button1"
),则更改ID以匹配新的窗口小部件类型,并更新全部引用。
-
这样能够将现有布局中的视图提取到本身单独的布局文件中。
include
指向新建立的布局文件的标签将插入到现有布局文件中。右键单击视图或布局,而后选择“
提取为包含...”。
-
提取字符串
-
将XML或Java文件中的字符串提取到本身单独的资源文件中。
-
提取样式
-
从布局中提取样式相关属性,并在新
styles.xml
文件中定义它们 。您能够选择多个视图,此重构将全部相同的样式提取为一种样式,并将该样式分配给全部使用它的视图。
-
包装容器
-
这可让您选择一个或多个兄弟元素并将其包装在新的容器中。这也能够应用于根元素,在这种状况下,命名空间声明属性将被传递到新的根。这个重构也会将属性
layout_
引用传递给新的根,例如,假设你有一个
RelativeLayout
。若是其余小部件具备指向您的小部件的布局约束,则包装小部件将致使这些约束指向父代。
-
快速助理
-
根据当前上下文提供重构建议。在编辑器中按
Ctrl-1(或Mac上的
Cmd-1),Eclipse会根据上下文提供可能的重构列表。快速助手能够快速访问全部上述重构(如适用)。例如,若是您正在编辑XML值并肯定要将其解压缩为字符串,请将文本光标放在字符串中,而后按Ctrl-1查看重构上下文菜单。
'