<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
H2 { margin-bottom: 0.08in }
H2.western { font-family: "Liberation Sans", sans-serif; font-size: 14pt; font-style: italic }
H2.cjk { font-family: "WenQuanYi Zen Hei"; font-size: 14pt; font-style: italic }
H2.ctl { font-family: "Lohit Devanagari"; font-size: 14pt; font-style: italic }
H3 { margin-bottom: 0.08in }
H3.western { font-family: "Liberation Sans", sans-serif }
H3.cjk { font-family: "WenQuanYi Zen Hei" }
H3.ctl { font-family: "Lohit Devanagari" }
-->
一、一些概念
活動:一個活動就是一個使用者介面螢幕,需要在工程中註冊後才可以使用。
意圖:描述動作的機制,如拍照、撥電話、訪問網頁;可調用意圖來執行這些操作,可註冊用於處理特定意圖的活動。
服務:類似Unix
Daemon。
內容提供者:應用程式間共用全域資料的一種方法。
資源:位元影像或字串等,放置在項目的res目錄;aapt根據其所處目錄不同進行不同處理,並自動更新名為R的類。
主題:可用於更改介面元素的外觀,如對話方塊主題。
進程是各活動可隨意使用的容器,活動的生命週期與進程的生命週期無關。每個活動都儲存自己的狀態以用於恢複(狀態包括什嗎?活動上的介面元素,如選擇框是否勾選?)。Android系統安全性:每個應用程式都被分配一個Linux使用者ID,被限制訪問其他應用程式的資料;並且需要申請所要求的關鍵操作的許可權。
Andoid系統內建的應用程式沒有特權,並且可以被使用者自己的程式替代。
二、介面開發
使用xml檔案進行介面元素定義,Activity函數setContentView()載入xml檔案在R
類中的對應來產生自己的介面。
1,介面元素
每個介面最外層是Layout,類型包括FrameLayout、LinearLayout、RelativeLayout等,Layout可嵌套。Button、TextView等元素放置在Layout中。
字串資源定義在strings.xml檔案中,其他xml檔案使用”@string/name”的形式引用字串。
2,豎排介面與橫排介面
目錄res/layout-land/中放置橫排介面的xml檔案,檔案名稱要與res/layout/保持一樣。
3,介面元素與事件處理
可以為Button等控制項定義id,方式是xml檔案中設定其屬性android:id=”@+id/xxx_id”。通過id得到控制項的方法:調用Activity方法findViewById(R.id.xxx_id)。
事件處理:首先實現相應Interface,如OnClickListener;然後調用控制項的方法設定其事件處理介面,如setOnClickListener();
例如,對於Button,OnClickListener的函數onClick的參數指示了被click的view,通過view的getId()可獲得其id,與R.id.xxx_id比較就可以知道誰被click了。
4,對話方塊
多種方法實現對話方塊:使用AlertDialog、自訂Activity、繼承Dialog類。startActivity()可用於啟動Activity。
應用主題,工程中註冊對話方塊時指定“android:theme”屬性即可。
5,菜單
Android支援兩種菜單:menu按鍵及長按螢幕的操作功能表。
menu菜單,在檔案res/menu/menu.xml中定義。Override
Activity的相應函數以處理菜單。
三、程式調試1,開啟調試
需要在工程設定檔中開啟可調試選項。
2,日誌
Log類的靜態方法輸出日誌,如Log.e();使用adb或eclipse捕獲日誌。