目录
第1篇开发准备——Android基础开发篇第1章初识Android平台3
1.1Android简介3
1.2Android的版本发展历程4
1.3Android的制胜法宝5
1.4Android的系统架构7
本章小结8
本章习题8第2章搭建Android开发与测试环境9
2.1安装Android开发环境9
2.1.1安装JDK10
2.1.2下载和安装Android Studio与Android SDK10
2.1.3Android Studio开发环境的使用14
2.2配置Android测试环境16
2.2.1使用Android模拟器运行Android程序16
2.2.2使用真机运行Android程序19
本章小结19
本章练习20第3章个Android应用程序21
3.1个Android程序: HelloWorld21
3.2Android程序结构24
3.3Android四大组件26
3.4Activity27
3.4.1创建和使用Activity273.4.2Activity的生命周期28
3.4.3初识Intent: 在不同Activity之间传递数据35
3.5知识拓展: Activity/ActionBarActivity/AppCompatActivity37
本章小结37
本章练习37第4章CoffeeStore项目导学38
4.1功能描述38
4.2体系结构与知识点39
4.3原型设计41
4.4数据库设计42
本章小结44
本章习题44第2篇界面开发——Android界面开发篇第5章Android布局管理器47
5.1线性布局管理器48
5.2相对布局管理器53
5.3表格布局管理器58
5.4网格布局管理器61
5.5帧布局管理器63
5.6向容器中手动添加控件67
5.7项目实战: CoffeeStore首页的界面开发69
5.7.1项目分析69
5.7.2项目实现70
5.7.3项目说明76
本章小结77
本章习题78第6章Android基本控件79
6.1文本类控件79
6.1.1TextView79
6.1.2AutoCompleteTextView84
6.1.3MultiAutoCompleTextView84
6.1.4EditText84
6.2ScrollView88
6.3按钮类控件90
6.3.1Button90
6.3.2ImageButton91
6.3.3ToggleButton94
6.3.4CheckBox94
6.3.5RadioButton95
6.4日期和时间类控件100
6.4.1DatePicker100
6.4.2TimePicker104
6.4.3DigitalClock108
6.4.4Chronometer108
6.5进度条控件ProgressBar112
6.6滑动条SeekBar112
6.7星级控件RatingBar113
6.8项目实战: 使用RadioButton实现主页底端导航条123
6.8.1项目分析123
6.8.2项目实现123
6.8.3项目说明125
6.9知识扩展:创建和使用自定义控件126
本章小结128
本章习题128第7章ViewPager与Fragment130
7.1ViewPager与PagerAdapter130
7.2Fragment及其应用场合135
7.3创建Fragment137
7.4初识Intent143
7.4.1Intent对象的基本概念143
7.4.2Intent对象的基本使用方法144
7.4.3使用Intent对象在Activity之间传递数据146
7.5Activity与Fragment之间的交互149
7.5.1为Activity创建事件回调方法149
7.5.2添加项目到ActionBar150
7.5.3与Activity生命周期的协调工作151
7.6项目实战: CoffeeStore主页滑动功能的实现151
7.6.1项目分析151
7.6.2项目实现151
7.6.3项目说明162
本章小结163
本章习题163第8章Android高级控件164
8.1Adapter对象164
8.2Spinner控件165
8.3ListView控件167
8.4ExpandableListView控件182
8.5GridView控件186
8.6HorizontalScrollView控件188
8.7项目实战: CoffeeStore首页广告轮播效果190
8.7.1项目分析190
8.7.2项目实现190
8.7.3项目说明191
8.8项目实战: CoffeeStore 店铺列表页192
8.8.1项目分析192
8.8.2项目实现192
8.8.3项目说明195
8.9项目实战: CoffeeStore首页推荐商品195
8.9.1项目分析195
8.9.2项目实现196
8.9.3项目说明197
本章小结198
本章习题198第9章资源样式与主题200
9.1资源200
9.2值资源202
9.2.1字符串资源202
9.2.2颜色资源204
9.2.3尺寸资源205
9.2.4数组资源206
9.3位图资源与色图资源207
9.4XML资源208
9.5菜单资源210
9.6对话框资源215
9.6.1提醒(Toast)对话框215
9.6.2AlertDialog218
9.6.3其他对话框资源223
9.7动画资源223
9.8风格资源与主题226
9.8.1风格资源226
9.8.2主题资源228
9.8.3图像状态资源230
9.9国际化(I18N)231
9.10项目实战: CoffeeStore中各种资源的使用233
9.10.1项目分析233
9.10.2项目实现234
9.10.3项目说明238
本章小结238
本章习题239第10章Android人机交互设计240
10.1常用事件240
10.1.1按键事件241
10.1.2触摸事件244
10.2拖拉与多点触屏247
10.3手势识别248
10.4项目实战: CoffeeStore 引导页图片切换的实现250
10.4.1项目分析250
10.4.2项目实现250
10.4.3项目说明254
本章小结254
本章习题254第3篇Android数据存储解决方案篇第11章本地存储技术259
11.1简单数据存储类SharedPreferences259
11.1.1SharedPreferences的使用场合259
11.1.2使用SharedPreferences存取数据260
11.2Android文件261
11.2.1文件数据的存储与读取261
11.2.2读写SD卡中的文件267
11.2.3读写资源文件271
11.3SQLite数据库274
11.3.1SQLite数据库存储数据概述274
11.3.2使用SQLiteOpenHelper类管理数据库版本274
11.3.3使用SQLiteDatabase操作数据库276
11.3.3一起发布数据库与应用程序279
11.4项目实战: CoffeeStore启动页安装信息的存取280
11.4.1项目分析280
11.4.2项目实现280
11.4.3项目说明281
11.5项目实战: 读取数据库文件281
11.5.1项目分析281
11.5.2项目实现281
11.5.3项目说明284
11.6项目实战: CoffeeStore项目中本地收藏夹的实现284
11.6.1项目分析284
11.6.2项目实现284
11.6.3项目说明294
本章小结295
本章习题296第12章网络存储技术297
12.1异步任务297
12.1.1异步任务的使用场合297
12.1.2异步任务类298
12.2JSON数据解析300
12.2.1JSON简介300
12.2.2JSON的基本语法301
12.2.3JSON的解析302
12.3HttpURLConnection304
12.3.1HTTP通信接口304
12.3.2HttpURLConnection的常用方法304
12.4利用异步任务读取服务器端图片信息306
12.5项目实战: 登录功能307
12.5.1项目分析307
12.5.2项目实现307
12.5.3项目说明317
12.6项目实战: 店铺列表功能317
12.6.1项目分析317
12.6.2项目实现318
12.6.3项目说明321
本章小结322
本章习题322第4篇Android高级开发篇第13章深入学习Intent327
13.1PendingIntent327
13.2Intent过滤器328
13.3运行时权限331
本章小结345
本章习题345第14章广播与服务346
14.1广播的定义与用途346
14.2广播接收器的实现347
14.3服务的基本概念351
14.4服务的生命周期353
本章小结358
本章习题358第15章地图与定位359
15.1位置服务359
15.2地图的定义与显示360
15.2.1申请地图密钥360
15.2.2地图的显示361
15.3地图的定位及路线规划365
15.3.1定位原理365
15.3.2定位与路线规划366
本章小结374
本章习题374参考文献375附录ARGB颜色对照表377