本書是美國知名編程類系列教材中針對 Android 系統下進行應用開發而編寫的一本入門級教材, 并結合了Java編程語言的基礎知識及重要概念的講解。全書采用了最新的Android SDK 4.3/4.4版本, 提供精選的7個生動的例子, 全面闡述了Android應用編程的完整過程。本書后半部分講解了Java的核心編程知識, 在開發Android應用時都要用到它們, 其中包括: Java應用簡介, 類、 對象、 方法和字符串, 控制語句, 方法, 數組, 類和對象, 繼承與多態, 異常處理, GUI組件和事件處理。每章都提供了大量的自測題、 習題和項目練習, 方便讀者鞏固所學知識。
國外知名作者的新作,結合Android開發與Java編程基礎的講解,內容淺顯易懂,實例豐富,強調實踐與應用,非常適合沒有Java編程基礎的初學者或作為學校開設編程課程的教材。
Paul Deitel和Harvey Deitel是全球暢銷的編程語言教材和專業圖書作家,“How to Program”系列是其最負盛名的一套計算機編程教材,已經銷售近40年,并被翻譯成中文在內的十幾種語言。他們成立的Deitel & Associates公司是一家國際知名的企業培訓和寫作公司, 專門進行計算機編程語言、 對象技術、移動應用開發及Internet和Web軟件技術方面的培訓和寫作,出版了一流的編程專業的大學教材、 專業圖書以及LiveLessons視頻課程。
第1章 Android簡介
1.1 簡介
1.2 Android——世界領先的移動操作系統
1.3 Android的特點
1.4 Android操作系統
1.4.1 Android 2.2(Froyo)
1.4.2 Android 2.3(Gingerbread)
1.4.3 Android 3.0~3.2(Honeycomb)
1.4.4 Android 4.0~4.0.4(Ice Cream Sandwich)
1.4.5 Android 4.1~4.3(Jelly Bean)
1.4.6 Android 4.4(KitKat)
1.5 從Google Play下載應用
1.6 包
1.7 Android軟件開發工具集(SDK)
1.8 面向對象編程: 簡短回顧
1.8.1 汽車作為對象
1.8.2 方法與類
1.8.3 實例化
1.8.4 復用
1.8.5 消息與方法調用
1.8.6 屬性與實例變量
1.8.7 封裝
1.8.8 繼承
1.8.9 面向對象的分析與設計(OOAD)
1.9 在AVD中測試Doodlz應用
1.9.1 在Nexus 4 AVD中運行Doodlz應用
1.9.2 在Tablet AVD中運行Doodlz應用
1.9.3 在Android設備上運行Doodlz應用
1.10 創建好的Android應用
1.11 Android開發資源
1.1 2小結
自測題
自測題答案
練習題
第2章 Welcome應用
2.1 簡介
2.2 技術概覽
2.2.1 Android開發人員工具IDE
2.2.2 文本視圖和圖像視圖
2.2.3 應用的資源
2.2.4 輔助性
2.2.5 國際化
2.3 創建應用
2.3.1 啟動Android開發人員工具IDE
2.3.2 創建新工程
2.3.3 New Android Application對話框
2.3.4 配置工程
2.3.5 配置啟動圖標
2.3.6 Create Activity步驟
2.3.7 Blank Activity步驟
2.4 Android Developer Tools窗口
2.4.1 Package Explorer窗口
2.4.2 編輯器窗口
2.4.3 Outline窗口
2.4.4 應用的資源文件
2.4.5 Graphical Layout編輯器
2.4.6 默認GUI
2.5 用Graphical Layout編輯器構建應用的GUI
2.5.1 給工程添加圖像
2.5.2 更改RelativeLayout和TextView的Id屬性
2.5.3 配置TextView
2.5.4 添加ImageView, 顯示圖像
2.6 運行Welcome應用
2.7 為應用增加輔助功能
2.8 使應用國際化
2.9 小結
自測題
自測題答案
練習題
第3章 Tip Calculator應用
3.1 簡介
3.2 測試驅動的Tip Calculator應用
3.3 技術概覽
3.3.1 Activity類
3.3.2 Activity類的生命周期方法
3.3.3 利用GridLayout和LinearLayout安排視圖
3.3.4 利用Graphical Layout編輯器和
Outline、 Properties窗口創建并定制GUI
3.3.5 格式化數字, 表示本地貨幣和百分比字符串
3.3.6 實現TextWatcher接口, 處理EditText中的文本變化
3.3.7 實現OnSeekBarChangeListener接口, 處理SeekBar中的滑塊位置變化
3.3.8 AndroidManifest.xml
3.4 構建應用的GUI
3.4.1 GridLayout簡介
3.4.2 創建TipCalculator工程
3.4.3 改成GridLayout布局
3.4.4 添加TextView、 EditText、 SeekBar和LinearLayout
3.4.5 定制視圖, 完成設計
3.5 為應用增加功能性
3.6 AndroidManifest.xml
3.7 小結
自測題
自測題答案
練習題
第4章 Twitter Searches應用
4.1 簡介
4.2 測試驅動的應用
4.2.1 導入應用并運行
4.2.2 添加一個搜索
4.2.3 查看Twitter搜索的結果
4.2.4 編輯搜索
4.2.5 共享搜索結果
4.2.6 刪除搜索記錄
4.2.7 滾動瀏覽保存的搜索記錄
4.3 技術概覽
4.3.1 ListView
4.3.2 ListActivity
4.3.3 定制ListActivity的布局
4.3.4 ImageButton
4.3.5 SharedPreferences
4.3.6 啟動其他Activity的Intent
4.3.7 AlertDialog
4.3.8 AndroidManifest.xml
4.4 構建應用的GUI
4.4.1 創建工程
4.4.2 activity_main.xml概覽
4.4.3 添加GridLayout和組件
4.4.4 Graphical Layout編輯器工具欄
4.4.5 ListView項的布局: list_item.xml
4.5 構建MainActivity類
4.5.1 package聲明和import聲明
4.5.2 擴展ListActivity
4.5.3 MainActivity類的字段
4.5.4 重寫Activity方法onCreate
4.5.5 實現saveButton的OnClickListener接口, 保存新搜索或更新后的搜索的匿名內部類
4.5.6 addTaggedSearch方法
4.5.7 實現ListView的OnItemClickListener
接口, 顯示搜索結果的匿名內部類
4.5.8 實現ListView的OnItemLongClickListener接口, 共享、 編輯或刪除搜索的匿名內部類
4.5.9 shareSearch方法
4.5.10deleteSearch方法
4.6 AndroidManifest.xml
4.7 小結
自測題
自測題答案
練習題
工程練習題
高級工程練習題
第5章 Flag Quiz應用
5.1 簡介
5.2 測試驅動的Flag Quiz應用
5.2.1 導入應用并運行
5.2.2 配置Flag Quiz應用
5.2.3 運行Flag Quiz應用
5.3 技術概覽
5.3.1 菜單
5.3.2 Fragment
5.3.3 Fragment生命周期方法
5.3.4 管理Fragment
5.3.5 首選項
5.3.6 assets文件夾
5.3.7 資源文件夾
5.3.8 支持不同屏幕尺寸和分辨率
5.3.9 確定屏幕尺寸
5.3.10用于顯示消息的Toast
5.3.11使用Handler在未來執行一個Runnable對象
5.3.12將動畫用于View
5.3.13為異常消息做日志
5.3.14使用顯式Intent啟動同一個應用中的另一個Activity
5.3.15 Java數據結構
5.4 構建應用的GUI和資源文件
5.4.1 創建工程
5.4.2 strings.xml與格式化字符串資源
5.4.3 arrays.xml
5.4.4 colors.xml
5.4.5 dimens.xml
5.4.6 activity_settings.xml布局
5.4.7 用于縱向設備的activity_main.xml布局
5.4.8 fragment_quiz.xml布局
5.4.9 用于橫向設備的activity_main.xml布局
5.4.10確定應用設置的preferences.xml
5.4.11創建國旗飄揚動畫
5.5 MainActivity類
5.5.1 package聲明、 import聲明與字段
5.5.2 重寫Activity方法onCreate
5.5.3 重寫Activity方法onStart
5.5.4 重寫Activity方法onCreateOptionsMenu
5.5.5 重寫Activity方法onOptionsItemSelected
5.5.6 實現OnSharedPreferenceChangeListener的匿名內部類
5.6 QuizFragment類
5.6.1 package聲明和import聲明
5.6.2 字段
5.6.3 重寫Fragment方法onCreateView
5.6.4 updateGuessRows方法
5.6.5 updateRegions方法
5.6.6 resetQuiz方法
5.6.7 loadNextFlag方法
5.6.8 getCountryName方法
5.6.9 實現OnClickListener的匿名內部類
5.6.10disableButtons方法
5.7 SettingsFragment類
5.8 SettingsActivity類
5.9 AndroidManifest.xml
5.10小結
自測題
自測題答案
練習題
工程練習題
第6章 Cannon Game應用
6.1 簡介
6.2 測試驅動的Cannon Game應用
6.3 技術概覽
6.3.1 將定制的View與布局綁定
6.3.2 使用raw資源文件夾
6