备注:一下内容为本人手工翻译官方文档注解,如有翻译不到位的地方,欢迎批评指正;
ADT(Android开发工具)是Eclipse的插件,它提供了一套与Eclipse IDE集成的工具。它可以让您访问许多功能,帮助您快速开发Android应用程序。ADT提供对许多命令行SDK工具的GUI访问以及用于快速原型设计,设计和构建应用程序用户界面的UI设计工具。
因为ADT是Eclipse的插件,您可以获得一个完善的IDE的功能,以及与ADT捆绑在一起的Android特有功能。以下介绍Eclipse和ADT的重要功能:
集成的Android项目创建,构建,打包,安装和调试
ADT将许多开发工作流任务集成到Eclipse中,方便您快速开发和测试您的Android应用程序。
SDK工具集成
许多SDK工具集成到Eclipse的菜单,透视图中,或作为ADT运行的后台进程的一部分。
Java编程语言和XML编辑器
Java编程语言编辑器包含常见的IDE功能,例如编译时语法检查,自动完成和Android框架API的集成文档。ADT还提供自定义的XML编辑器,可让您在基于表单的UI中编辑Android特定的XML文件。图形布局编辑器允许您使用拖放界面设计用户界面。
Android框架API的集成文档
您可以通过将鼠标悬停在类,方法或变量上来访问文档。
SDK工具集成
需要帮助设计图标?
您可以从命令行启动或运行的许多工具集成到ADT中。他们包括:
- 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编辑器底部的两个选项卡之间切换这些模式。
另外,一些没有自定义编辑器的特殊文件类型,例如可绘制,动画和颜色文件提供了编辑增强功能,如XML标签完成。
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查看重构上下文菜单。
'