Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 開發入門 >> 使用 Eclipse 和 Android 小部件進行 Android 開發的簡介(二)

使用 Eclipse 和 Android 小部件進行 Android 開發的簡介(二)

日期:2016/3/13 17:13:22      編輯:開發入門

在仿真器上運行應用程序

為部署和運行應用程序,您需要定義一個運行配置。在 Eclipse 內選擇 Open > Run > Dialog 或工具欄上的快捷方式,並選擇 android application。單擊 New 並填寫運行配置的名稱。指定項目名稱和默認活動。然後在目標選項卡中,選擇一些想要的仿真器設置並指定希望啟動的 AVD。單擊 Run。您會獲得如圖 6 所示的 AVD。左邊顯示設備的屏幕,左下方是 QWERTY 小鍵盤,左上方是常見的移動設備按鈕,比如撥號、掛斷、靜音、音量和主菜單。


圖 6. android Virtual Device
Android Virtual Device 屏幕截圖,左邊顯示模擬的手機,右邊顯示所有手機按鈕的虛擬鍵

 

android 小部件

我們已經知道如何創建和運行一個基本的 android 應用程序了,現在讓我們使用小部件來進行裝飾(見圖 7):

  • textVIEw 包含 editText、Button 等小部件。可將 Buttons 進一步劃分為:
    • CheckBox
    • RadioButton
    • ToggleButton 等
  • ImageVIEw 包含 ImageButton 等小部件。
  • VIEwGroup 包含以下布局:
    • Relative Layout
    • Table Layout
    • Frame Layout
    • Adapter VIEw
    • Linear Layout

欲了解有關小部件的信息,“A Visual Guide to android GUI Widgets” 是最好的指南。但是要注意因 android 平台的快速變更而引入的不一致性。一個突出的例子就是,使用 id 作為上述指南中main.XML 中的小部件的標識符屬性。在最新的 android 平台中,應當使用完全限定的 android:id


圖 7. android 小部件的層次結構
展示 Android 中每個小部件的層次結構的圖,頂部是視圖,後面是視圖類型和向每個視圖應用的不同小部件 

 

Hello android 項目詳情

Hello Android 是一個基本的 android 項目,該項目僅打印 Hello World 到屏幕上。它在本文中具有以下作用:

  • 展示創建新 android 項目的流程。
  • 概覽一個 android 項目中的文件及其用途。
  • 展示如何部署一個應用程序到 AVD 上並測試它。

要查看文件和 android 項目的其他資源部分,並使用 Eclipse 內的 Package Explorer 視圖(Window > Show VIEw > Package Explorer)。新創建的 android 項目將包含以下內容(參見圖 2):

  • 有兩個包含源代碼的文件夾:
  1. src 包含用戶指定的所有類,包括默認的活動類。
  2. gen 包含該文件夾內的 ADT. R.Java 自動生成的文件,該文件夾包含對 res 文件夾中存在的所有資源的靜態引用,這樣就可以輕松、動態地通過 Java 代碼引用它們。建議不要手動修改 R.Java 的內容。


圖 2. Hello android 項目內容
Eclipse 中的 Hello Android 項目布局的屏幕截圖 

 

  • res 文件夾包含用於項目的所有資源:圖標、圖像、字符串和布局。擁有一個獨立的資源文件夾可將非源代碼資源保留在代碼外部,並可基於硬件、軟件、方向和位置動態地選擇資源。

它包括:

    1. drawable 文件夾 — 針對所有圖像文件。
    2. layout 文件夾 — 針對以 XML 代碼形式指定活動 UI 屏幕的布局。Main.xml 是自動生成的。該文件夾涉及到默認的縱向布局。為在橫向布局(當一個 android 設備旋轉 90 度時)中表示一些 UI,創建一個 layout-land 文件夾並將您的布局 XML 文件放在那裡。main.XML 文件有一個漂亮的 UI 表示,如圖 3 所示。您可以將不同的布局和視圖拖放到一個空白屏幕,以構建活動的 UI 組件。
    3. values 文件夾 — 針對所有名稱-值對(您的應用程序要定義的字符串)。
  • androidManifest.XML 也是項目的一個重要部分。它等同於插件的一個 plugin.XML 文件。它主要定義應用程序中的活動,並指定為每個活動指定的操作。它還列出應用程序執行各操作所需的權限。它也有一個漂亮的 UI。


圖 3. main.XML 的 UI
main.xml 生成的 UI 屏幕截圖,顯示空白屏幕和文本 

 

讓我們在磁盤上看一下項目文件夾的實際內容。在 Eclipse 中打開 Navigator VIEw(Window > Show VIEw > Navigator)。您會獲得 HelloWorld 項目的結構,如圖 4 所示。除了編譯的類文件之外,您會在一個 bin 文件夾中獲得下面三個文件:

  1. classes.dex — 從編譯類生成的可執行文件。
  2. HelloWorld.apk — 將會附加到 Android 設備的壓縮存檔文件。可通過該存檔文件將應用程序安裝到任何 android 設備上。
  3. resources.ap_ — 壓縮的應用程序資源。


android 項目的目錄結構
項目結構屏幕截圖,顯示 classes.dex、HellowWorld.apk 和 resources.ap_ under bin/com 的位置,其中標簽突出在上一圖中定義的它們的用途 

 

應用程序的主要 “Activity”

讓我們看一下 MainActivity.Java


清單 1. MainActivity.Java

					
package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentVIEw(R.layout.main);
    }
}

 

有關該文件需要注意的事項:

  • MainActivity 擴展一個名為 Activity 的 android 基類,該類位於android.app 包內。
  • onCreate() 方法是該活動的默認入口點,必須為每個新活動實現。它接收一個 Bundle 類型的參數。創建活動所需的選項和參數被傳遞到該參數中。
  • setContentVIEw() 負責使用 R.layout.main 參數創建主 UI。這是在 R.Java 中定義的一個常量,表示在應用程序資源中找到的主要布局。

Main.XML

這個 XML 文件描述應用程序的 UI。一個活動可以引用這個 UI。不過,這個 UI 根本不會將自身綁定到任何活動。一個 UI 是使用布局和小部件構建的。Eclipse 默認構建的 main.XML 包含一個 LinearLayout,這表示所有元素都以單一列安排。然後它定義一個textVIEw,用於顯示一個不可編輯的靜態文本。在本例中是 strings.XML 文件中定義的 “hello” 字符串(‘@’ 標記是指在res 文件夾中定義的文件)。每個視圖元素還有屬性,比如layout_height 和 layout_width 等等。


圖 5. Main.XML 和屬性視圖
屬性視圖中含有 main.xml 的 Eclipse 屏幕截圖,在左上角顯示代碼,右上角是概覽,底部是屬性的層級結構 

 

使用 main.XML 文件的一個簡單方式是通過屬性視圖(Window > Show View > Other > General > PropertIEs)。在概覽視圖中選中特定視圖時,屬性選項卡中填充有視圖的所有可能屬性,如圖 5 所示。這些屬性大部分只有固定值可供選擇,可以從屬性選項卡中靠近每個屬性的下拉菜單中選擇。例如,要設置layout_height,您可以查看下拉框,發現它僅有兩個允許值:wrap_content 和 fill_parent。(wrap_content 將僅以原始大小繪制視圖,而 fill_parent 會將其延伸到覆蓋整個高度或寬度,或兩者兼而有之。)
注意:對於 layout_height 和 layout_width,您還可以指定以下兩個單位的大小:(a) 與密度無關的像素(dp)— 該大小可使布局從不同屏幕大小的設備查看時看起來一樣。例如:layout_width = 10dp;(b) 與尺度相關的像素(sp)— 類似於 dp,但這是推薦的移動電話標准。例如:layout_width = 10sp。另一點需要注意的是,如果您希望通過 Java 代碼引用一些視圖/小部件,需要有一個惟一 ID。如果您使用 main.XML 的布局選項卡來拖放一個小部件,ADT 會自動為小部件創建一個 ID,其形式為 “@+id/someVIEw”。在 Java 代碼中,您可以將其引用為 R.id.someVIEw

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved