第1章简介 1
1.1 Android的诞生 1
1.2 Android是什么 3
1.3 Android操作系统概论 3
第2章开发环境的设定 5
2.1 安装Android开发工具 5
2.1.1 Windows上的安装 6
2.1.2 MAC上的安装 9
2.2 Android SDK相关设定 11
2.2.1 修改Android SDK的路径 11
2.2.2 安装和移除不同版本的Android SDK 13
2.2.3 设定Android模拟器 14
2.3 将项目导入Eclipse 18
2.4 常见的Android项目范例使用问题 22
2.4.1 调整Android项目的版本问题 22
2.4.2 清除编程暂存的记录 23
2.4.3 如何执行Android SDK 1.5以前的程序 24
2.4.4 如何在Eclipse编程中显示中文 25
2.4.5 已开启一个Android模拟器,但是Eclipse还是打开新的Android模拟器 25
2.5 安装Android Studio开发工具 27
第3章开发环境介绍 30
3.1 Eclipse 30
3.1.1 Hello World第一个程序 30
3.1.2 编程项目架构 39
3.1.3 调试模式 41
3.2 Android Studio的介绍与使用 44
3.2.1 使用Android Studio开发工具编写Hello World程序 44
3.2.2 编程项目架构 52
3.2.3 调试模式 53
第4章Android常用的组件 56
4.1 TextView组件——文字显示 56
4.2 EditText组件——文本输入 59
4.3 Button组件——按钮 64
4.3.1 按钮处理事件方法之一 65
4.3.2 按钮处理事件方法之二 67
4.3.3 按钮处理事件方法之三 68
4.4 ImageView组件——显示图片 70
4.5 ImageButton组件——图片式按钮 74
4.6 CheckBox组件——复选框 77
4.7 RadioGroup和RadioButton组件——单选组合/单选按钮 80
4.8 Spinner组件——下拉式选项 83
4.9 NumberPicker组件——选择数字 85
第5章切换画面 89
5.1 startActivity——换页 89
5.2 Bundle——传递数据到下一页 96
5.3 startActivityForResult——回到上一页并把数据传回去 99
第6章界面设计 105
6.1 RelativeLayout——相对布局 105
6.2 LinearLayout——线性布局 107
6.3 AbsoluteLayout——绝对位置布局 109
6.4 FrameLayout——框架布局 110
6.5 TableLayout——表格布局 112
6.6 GridLayout——网格布局 113
6.7 Insert Layout——加入其他布局 115
6.8 动态加入——加入其他布局 117
第7章触发 122
7.1 触发事件方法一——通过class的方式 122
7.2 触发事件方法二——通过implements的方式 126
7.3 触发事件方法三——直接写在setOnTouchListener函数中的方式 128
7.4 触发事件方法四——使用触发变量的方式 129
第8章消息 132
8.1 Log函数——日志 132
8.2 Toast函数——显示消息 134
8.3 AlertDialog——提示对话框 135
8.4 PopupWindow——弹出窗口 146
8.5 ListPopupWindow——列表弹出窗口 150
8.6 ProgressDialog——进度对话框+多线程执行 153
8.7 NotificationManager——消息提示管理器 159
8.8 Menu——菜单 162
8.9 PopupMenu——弹出式菜单 166
8.10 Status bar notifications——状态栏提示 171
第9章列表组件 181
9.1 ListActivity组件——列表方法1 181
9.2 在Activity中ListActivity——列表方法2 184
9.3 ScrollView组件——上下滚动画面 192
9.4 HorizontalScrollView组件——左右滚动画面 195
第10章动画 198
10.1 Tween Animation UI组件 198
10.2 Frame Animation UI组件 206
10.3 换页动画效果——方法一 212
10.4 换页动画效果——方法二 217
第11章高级组件 223
11.1 Tab——选项卡组件 223
11.2 ActionBarTab——活动栏标签 227
11.3 SlidingDrawer——展开、关闭 233
11.4 style换肤功能 243
11.5 Fragment UI组件——画面切换 248
11.6 ActionBar组件——活动栏组件 252
11.7 SearchView搜索框 261
11.8 ActionBar返回上一页 264
11.9 SearchView 266
11.10 StackView组件——图片显示 266
11.11 ExpandableListView组件——展开列表 273
11.12 Content Loaders的范例程序 279
第12章网络 285
12.1 WebKit组件——显示网页 285
12.2 HTTPGet组件的范例程序 289
12.3 HTTPPost组件的范例程序 293
12.4 通过HTTP Download Image下载图片 297
12.5 网络下载限时 301
第13章数据 305
13.1 Preferences的范例程序 305
13.2 File的范例程序 308
13.3 SQLite的范例程序 314
13.4 XML 326
13.5 JSON 337
第14章控制硬件 343
14.1 Android拨打电话的方法 343
14.2 发短信 345
14.3 位置服务GPS 350
14.4 GPS获取经纬度转换为地址范例程序 356
14.5 Map地图 361
14.6 Bluetooth API 366
14.7 蓝牙聊天室 BluetoothChat 372
14.8 WiFi Direct 386
14.9 NFC 401
第15章多媒体 415
15.1 MediaPlayer音乐播放mp3——音乐封装在项目程序中 415
15.2 MediaPlayer音乐播放mp3——音乐文件放在SD卡 422
15.3 VideoView——播放影片 428
15.4 MediaRecorder——录音 432
第16章系统篇 440
16.1 ScreenOrientation——画面翻转 440
16.2 ScreenOrientation——横竖画面的处理 444
16.3 System clipboard系统剪贴板 449
16.4 Widget——桌面组件程序 453
第17章多线程 464
17.1 Timer——计时器 464
17.2 Thread线程程序Runnable 467
17.3 建立自己的implement触发事件 470
17.4 Service常驻程序 475
17.5 Service进阶版 481
第18章Android开发相关技巧 485
18.1 签名和出售应用程序 485
18.1.1 做认证文件keystore 485
18.1.2 在Google Play上销售应用程序 490
18.2 获取设备或模拟器的截图 493
18.3 Android使用第三方jar包的方法 494
18.4 创建与使用Lib 496
18.4.1 如何创建Lib 496
18.4.2 如何使用Lib 500
第19章2D图形图像 504
19.1 精通图形图像——onDraw组件 504
19.2 Drawable多种绘图方法 509
19.2.1 Drawable UI组件的程序范例——绘制一个红色的长方形 510
19.2.2 Drawable UI组件的程序范例——绘制一个绿色的椭圆形 512
19.2.3 Drawable UI组件的程序范例——绘制一个蓝色的圆角长方形 513
19.2.4 Drawable UI组件的程序范例——绘制一个多颜色的手绘空心长方形 513
19.2.5 Drawable UI组件的程序范例——绘制一个多颜色的圆角空心长方形 516
19.2.6 Drawable UI组件的程序范例——绘制一个蓝色条纹的菱形 516
19.2.7 Drawable UI组件的程序范例——绘制有缺口的圆形 518
19.3 DrawableImageView UI组件的程序范例——绘图板 520
19.4 Image Process组件——改变图像颜色 526
19.4.1 Image Process的范例程序 526
19.4.2 ImageProcess的画面设定资源 526
19.4.3 ImageProcess的范例程序——改变图像颜色 527
第20章3D图形图像 531
20.1 OpenGL ES组件 531
20.2 OpenGL ES组件的程序范例一—OpenGL ES的基本架构,设定一个OpenGL ES View 531
20.3 OpenGL ES组件的程序范例二——全画面 535
20.4 OpenGL ES组件的程序范例三——绘制正方形 536
20.5 OpenGL ES组件的程序范例四——物件移动 547
20.5.1 Coordinate System坐标系统 547
20.5.2 移动Translate 547
20.5.3 Translate & Rotate移动和旋转 550
20.5.4 Load Identity, push and pop matrix初始矩阵、放入矩阵和取出矩阵 552
20.5.5 物件转换三个方块移动和旋转的基本架构 552
20.5.6 进阶学习 554
20.6 OpenGL ES组件的程序范例五——物件的画法glDrawElements 555
20.7 OpenGL ES组件的程序范例六——颜色 557
20.7.1 Flat coloring平面颜色 558
20.7.2 基本架构 558
20.8 OpenGL ES组件的程序范例七——Smooth coloring渐变色 559
20.8.1 编程一——渐变色的正方形 561
20.8.2 编程二——用按钮改变正方形的颜色 562
20.9 OpenGL ES组件的程序范例八——Meshes网格 565
20.9.1 Meshes网格——方块 568
20.9.2 Meshes网格——Plane平面class 569
20.9.3 Meshes网格——Group 572
20.10 TextureView纹理视图 574
后记柯博文经验谈 579
· · · · · · (
收起)