[教學]Android的第一個程式

裝好了Eclipse Android開發工具後再來簡介一下Android如何快速的開發

Android開發GUI程式大概分成二種方式

第一種是直接打code,第二種則是利用xml檔設定物件屬性,動作再輸入程式碼控制

現在要介紹的是如何用xml設定一個GUI畫面及設定其屬性

ps.需先安裝環境,可參考[安裝教學]使用Eclipse開發Android程式

1,設定Google Android模擬器環境

Windows –> Android ADV Manager

新增一個AVD

Name:名稱

Target:Android的版本

SDCard:填入記憶卡的容量

13




2,建立專案

File –> New

Project name : 專案名稱

Build Target : 開發的SDK版本

Application name : 程式名稱,也可以說是顯示在程式Title上的名稱

Package name : Package 名稱,需二層

Create Acivity : 需要打勾,輸入一個程式名,like L123,之後程式會以這裡為啟動點

12

這裡就可以很明顯看到剛才填的東西

其中 gen 的R.java是系統資料檔,幾乎所有的元件都在此設定(以Google Android開發工具的設定)

res 為外部資源檔,裡面可以設定文字、圖片、XML等,其中文字拿到外部設定是為了能直接支援多國語系

layout : 為畫面設定檔

values : 為設定資源檔

27

ps.以下圖片可能在src裡的內容有些不同,是在截圖的小錯誤,不影響

14

3,設計畫面

直接雙擊 res 裡的layout main.xml 則會開啟GUI畫面

左一 Layouts 為一層一層的Layout

左二 Views 為元件

下方 Properties 為屬性設定窗

右一 Outline 為元件列表

15

再來從Views 拉二個元件-Button 及 EditText 放到畫面試看看

然後可以在選擇EditText物件,在屬性窗裡找到Text 設定它的Value  來試看看

16

也可以利用設定xml來顯示值的部份

在剛才輸入Hello 右邊有一個Browser按鈕按下去

25

可以看到設定資料檔(你也可以直接雙擊 res 裡的 values的string.xml)

String : 此參數在有選定XML resource to edit 才有做用?

new .R .string : 引用此文字的名稱

17

18

可以看到剛才輸入Hello的那個Text 屬性有的變化,而畫面字也不見了,再來要真正設定字的內含值

20

雙擊 res 裡的 values的string.xml

把要的值設進去,然後再變回去main.xml看看,畫面會有變化(亂碼,不過別介意)

28

4,執行程式

Run –> Run Configurations

選擇Android Application 按右鍵選New

22

Browser要執行的程式專案名稱

23

然後跳到第二個tab Target

ADV部份選則之前設定的那一個,然後選Run

24

模擬器會啟動及顯示結果,速度會應電腦設備而有所不同,請等一下看看^^

26

28 comments on “[教學]Android的第一個程式

  1. 我在模擬器顯示結果之前會有以下訊息:
    Process com.android.phone is not responding.
    有兩個選項可以選擇
    1.Force close 2.Wait
    我選擇 Force close 後可以顯示出正確結果
    但是不了解這個訊息代表甚麼? 如何解決 ?

    謝謝

    • 是指某一個程式com.android.phone可能在執行時(因為是多工)
      並未在指定時間內完成init,所以會問你是否要等待他完成(有時是當掉了)
      或是直接關閉
      模擬器很容易出現這種狀況,建議除非是自己開發的程式,否則都請選擇wait等待程式init完成

  2. 請問在建立專案New Android Projec ->Build Target中target Name選Android1.5後面API為3所以下面的Min SDK Version才填3是嗎?還有我在3,設計畫面
    直接雙擊 res 裡的layout main.xml 卻沒有開啟GUI畫面,會是什麼原因?也就是您提到的"3設計畫面"。我的Android是2.2 謝謝

    • Min SDK是用來指定你的SDK環境要用那個版本,越小的版本可支援的android版本越小
      不過能使用的功能可能相對也比較少,
      Min的意思是最小支援
      你可以在res\main.xml節點上按右鍵選->open with ->android layout editor 就可以了
      如果沒有的話代表你的套件並沒有安裝完成

      • Dear yku:
        我在res\main.xml節點上按右鍵選->open with ->android layout editor 出現的不是
        視窗畫面是一串語法,如下:

        並沒有你提到的"直接雙擊 res 裡的layout main.xml 則會開啟GUI畫面"

        左一 Layouts 為一層一層的Layout

        左二 Views 為元件

        下方 Properties 為屬性設定窗

        右一 Outline 為元件列表

        這是為何呢?請大大你可以幫我解疑嗎?

  3. 請問在3,設計畫面中,已直接雙擊 res 裡的layout main.xml 但並未開啟GUI畫面,反而出現[2010-10-05 18:39:55 - AndroidTest] ERROR: Unable to open class file D:\eclipse\workspace\AndroidTest\gen\test\mob\R.java: No such file or directory. 但實際上檔案是存在的,該如何解決 ?我的Android是1.6, 謝謝 !!

  4. Hi, yku,
    照你的方式輸入,但無下方之Properties出現,我由main.xml更改'Button01'與'Hello', 執行出現 Error Loading Preference(Dos視窗),手機視窗空白,Console 出現這些字,

    [2011-01-10 09:29:39 - Android Test2] ------------------------------
    [2011-01-10 09:29:39 - Android Test2] Android Launch!
    [2011-01-10 09:29:39 - Android Test2] adb is running normally.
    [2011-01-10 09:29:39 - Android Test2] Performing test.mob.L123 activity launch
    [2011-01-10 09:29:39 - Android Test2] Automatic Target Mode: launching new emulator with compatible AVD 'Androlid'
    [2011-01-10 09:29:39 - Android Test2] Launching a new emulator with Virtual Device 'Androlid'
    [2011-01-10 09:29:44 - Android Test2] New emulator found: emulator-5554
    [2011-01-10 09:29:44 - Android Test2] Waiting for HOME ('android.process.acore') to be launched...

    請問如何解決,萬分感謝

  5. Hi, yku,

    目前測試因無下方之property選單,由main.xml更改'Button01'與'Hello',如下

    執行後無Error,一直出現"ANDROID"手機螢幕,未出現'Button01'與'Hello',等了20分鐘,請問如何解決,萬分感謝

  6. 非常謝謝您,剛剛測試已經解決了,對不起昨日附上xml程式碼, 但被擋掉了(回答框),若有問題再請教您

  7. Dear YKU :

    目前我有一個問題,我已裝JDK AND Eclipse ,但是當eclipse開啟時,它會跳出SDK Platform Tools component is missing!
    Please use the SDK Manager to install it.

    請問是哪邊錯呢 ?

    非常感謝!!

  8. 我用eclipse執行程式的時候,

    每次碰到emulator螢幕旁邊的按鈕時,

    常常會出現ㄧ個小視窗裡面寫著,

    {emulator發生錯誤,必須關閉}的字,然後叫我要{不回報}或{回報此問題},

    我想請你能不能幫我解決這個問題?

  9. 請教:android query()多條件資料查詢如何使用?
    如只查詢一個條件可以正常如下:
    Cursor c = db.query("Users", FROM ,"user_name='" + mEditText01.getText().toString() + "'", null, null, null, null);
    但多個條件查詢參數及語法不知如何寫? 有時只要一個條件查詢,有時要多個條件查詢,能否用IF來判定增減WHERE條件參數?

  10. 您好 關於您的教學網站

    我自己操作 發現有一個問題

    就是我在建立BMI值計算的專案到啟動虛擬器運行
    然後可以在體重/身高欄位輸入字體 點輸入欄位會談出觸控鍵盤

    我的點了沒跳出觸控鍵盤
    但可以用電腦鍵盤打字輸入 或者用虛擬器的鍵盤輸入

    這是正常現象??

    我用的版本是 ANDROID 4.0.3

  11. 不好意思請問一下
    我創立一個新的專案
    是用最新版本的Android SDK & ADT Bundle
    但我在layout裡面卻沒有main.xml
    該怎麼處理呢..

發表迴響