備註:一下內容爲本人手工翻譯官方文檔註解,若有翻譯不到位的地方,歡迎批評指正;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查看重構上下文菜單。
'