商品簡介
《應用型本科院校計算機類專業校企合作實訓系列教材:基於Android的手機應用軟件開發教程》在編寫過程中,作者力求保持教學內容的系統性,由淺入深,深入淺出,同時以Android技術應用為主線,加入了組件編程技術、遊戲編程技術、SQLite數據庫技術、圖形編程技術、Google地圖、NDK技術等內容,力求反映Android技術的最新發展成果。
在本書編寫過程中,作者參考了南京多禾信息技術有限公司的項目案例,其中包括他們近年來積累的技術資料和程序代碼,力求做到層次清楚,內容豐富,代碼準確,具有實戰性。這樣,既便于讀者循序漸進地系統學習,又能使讀者深入瞭解到Android手機最新的編程技術,希望本書對讀者掌握Android系統的開發技術有一定的幫助。
名人推薦
《應用型本科院校計算機類專業校企合作實訓系列教材:基于Android的手機應用軟件開發教程》既便于讀者循序漸進地系統學習,又能使讀者深入了解到Android手機最新的編程技術,希望《應用型本科院校計算機類專業校企合作實訓系列教材:基于Android的手機應用軟件開發教程》對讀者掌握Android系統的開發技術有一定的幫助。
目次
前言
第1章 Android簡介
1.1 手機操作系統
1.2 Android起源
1.3 Android發展史
1.4 Android特徵
1.5 Android體系結構
習題與思考題
第2章 Android開發環境
2.1 安裝Android開發環境
2.2 Android SDK
習題與思考題
第3章 Android應用程序
3.1 第一個Android程序
3.2 Android程序結構
3.3 命令行創建程序
習題與思考題
第4章 Android生命週期
4.1 程序生命週期
4.2 Android組件
4.3 Activity生命週期
4.4 程序調試
習題與思考題
第5章 Android用戶界面
5.1 用戶界面基礎
5.2 界面控件
5.3 界面佈局
5.4 菜單
5.5 界面事件
習題與思考題
第6章 組件通信與廣播消息
6.1 Intent
6.2 廣播消息
習題與思考題
第7章 Android後臺服務
7.1 Service簡介
7.2 本地服務
7.3 遠程服務
習題與思考題
第8章 對話框與提示信息
8.1 對話框
8.2 提示信息Toast
8.3 溫馨信息Notification
習題與思考題
第9章 Android桌面組件
9.1 AppWidget框架類
9.2 如何使用Widget
9.3 Demo講解
習題與思考題
第10章 SQL基礎
10.1 SQL概述
10.2 數據定義功能
10.3 數據操縱功能
10.4 查詢功能
習題與思考題
第11章 數據存儲和訪問
11.1 簡單存儲
11.2 文件存儲
11.3 數據庫存儲
11.4 數據分享
習題與思考題
第12章 連絡人
12.1 連絡人數據庫
12.2 對連絡人的基本操作
習題與思考題
第13章 Android圖形開發
13.1 Drawable對象
13.2 Bitmap對象
13.3 Animation對象
習題與思考題
第14章 SurfaceView
14.1 SurfaceView簡介
14.2 自定義SurfaceView
14.3 SurfaceView的多線程
習題與思考題
第15章 2D遊戲開發
15.1 2D遊戲開發基礎
15.2 簡單遊戲框架
15.3 聲音播放
15.4 手勢識別
15.5 加速度傳感器
習題與思考題
第16章 2D遊戲開發進階
16.1 遊戲地圖
16.2 碰撞
16.3 遊戲的狀態控制
16.4 打磚塊遊戲實例
習題與思考題
第17章 位置服務與地圖
17.1 位置服務
17.2 Google地圖應用
習題與思考題
第18章 Android NDK開發
18.1 NDK簡介
18.2 NDK編譯環境
18.3 NDK開發示例
習題與思考題
參考文獻
書摘/試閱
5.5 界面事件
5.5.1按鍵事件
在MVC模型中,控制器根據界面事件(UI Event)的類型,將事件傳遞給界面控件不同的事件處理函數。按鍵事件(KeyEvent)將傳遞給onKey()函數進行處理,觸摸事件(TouchEvent)將傳遞給onTouch()函數進行處理。Android系統界面事件的傳遞和處理遵循一定的規則,如果界面控件設置了事件監聽器,則事件將先傳遞給事件監聽器,如果界面控件沒有設置事件監聽器,界面事件則會直接傳遞給界面控件的其他事件處理函數,即使界面控件設置了事件監聽器,界面事件也可以再次傳遞給其他事件處理函數。
Android系統界面事件的傳遞和處理遵循一定的規則,是否繼續傳遞事件給其他處理函數是由事件監聽器處理函數的返回值決定的。如果監聽器處理函數的返回值為t,ue,表示該事件已經完成處理過程,不需要其他處理函數參與處理過程,這樣事件就不會再繼續進行傳遞。如果監聽器處理函數的返回值為false,則表示該事件沒有完成處理過程,或需要其他處理函數捕獲到該事件,事件會被傳遞給其他的事件處理函數。以EditText控件中的按鍵事件為例,說明Android系統界面事件傳遞和處理過程,假設EditText控件已經設置了按鍵事件監聽器。
當用戶按下鍵盤上的某個按鍵時,控制器將產生KeyEvent按鍵事件,Android系統會首先判斷EditText控件是否設置了按鍵事件監聽器,因為EditText控件已經設置按鍵事件監聽器0nKeyListener,所以按鍵事件先傳遞到監聽器的事件處理函數onKey()中。事件能夠繼續傳遞給EditText控件的其他事件處理函數,完全根據0nKey()函數的返回值來確定,如果onKey()函數返回false,事件將繼續傳遞,這樣EditText控件就可以捕獲到該事件,將按鍵的內容顯示在EditText控件中;如果onKey()函數返回true,將阻止按鍵事件的繼續傳遞,這樣EditText控件就不能夠捕獲到按鍵事件,也就不能夠將按鍵內容顯示在EditText控件中。Android界面框架支持對按鍵事件的監聽,并能夠將按鍵事件的詳細信息傳遞給處理函數。為了處理控件的按鍵事件,先需要設置按鍵事件的監聽器,并重載onKey()函數。