《Android应用开发精解》目录

目录

前言      3

第一章工欲善其事 必先利其器—AndroidSDK工具       9

1.1 巧妇难为无米之炊—Android SDK的安装     9

1.2 设备管理工具—调试桥(ADB)       11

1.2.1 ADB简介  11

1.2.2 ADB常用命令介绍       11

1.3 没有真机一样开发--Android模拟器 13

1.4 Android调试—调试工具( DDMS)      16

1.5 UI布局分析工具—视图工具(HierarchyViewer)     20

1.6 Log打印—Log输出工具(logcat) 22

1.6.1 启动logcat      22

1.6.2 过滤日志输出 23

1.6.3 控制日志输出格式       23

1.6.4 查看可用日志缓冲区   24

1.7 图片拉伸不失真—九宫格绘制工具(Draw9-Patch)      25

1.7.1 什么是“点九”文件   25

1.7.2 点九文件的制作    25

第二章吸引你的眼球—UI编程 28

2.1 UI基础—常用UI组件    28

2.1.1 文本显示—文本框(TextView)    28

2.1.2 按钮(Button)    30

2.1.3 文本编辑—编辑框(EditText)     32

2.1.4 图片显示—图片视图(ImageView)    35

2.1.5 多项选择—多选框(CheckBox)和单项选择—单选框(RadioBox)      37

2.1.6 图片拖动—拖动效果(Gallery)    41

2.1.7 列表组件(ListView)       43

2.2 彰显你的个性—自定义UI组件  50

2.3 简单明了的消息提示框(Toast)和对话框(Dialog)      53

2.3.1 Toast提示       53

2.3.2 Dialog提示      53

2.4 Menu键的呼唤—Menu菜单       57

第三章界面UI的基石—UI布局      62

3.1 用户界面的基本单元—View视图     62

3.2 百花齐放—各种Layout布局      64

3.2.1 Layout布局的简单介绍      64

3.2.2 线性布局(LinearLayout)      65

3.2.3 相对布局(RelativeLayout)   67

3.2.4 框架布局(FrameLayout)      69

3.2.5 表单布局(TableLayout)       71

3.2.6 绝对布局(AbsoluteLayout)  73

3.3 样式(Style)和主题(Theme)的使用 75

3.3.1 样式(Style)的使用  75

3.3.2 主题(Theme)的使用      76

第四章 Android开发三大基石—Activity、Service和Handler      78

4.1 应用程序的接口—Activity窗口  78

4.1.1 Activity生命周期   78

4.1.2 Activity栈 79

4.1.3 Activity的创建       80

4.1.4 Activity的四种加载模式     81

4.1.5 Activity交互—Activity跳转      82

4.1.6 Activity中数据传递      85

4.2 千变万化的服务-Service开发     85

4.2.1 Service的生命周期      85

4.2.2 Service的启动和停止  86

4.2.3 我的服务我来用—本地服务(Localservice)开发       86

4.2.4 开机自启动的服务       91

4.3 Android线程间的通信—消息机制     92

4.3.1 消息的传递—Handler的使用  92

4.3.2 Android中消息机制的详细分析      94

第五章以数据为中心—数据存取     97

5.1 文件操作     97

5.1.1 读写一般的文本文件   97

5.1.2 结构性的文件—读写XML文件      99

5.1.3 自由操作 随心所欲—序列化和反序列化    108

5.2 通用的数据操作方式—数据库    111

5.2.1 SQLite数据库介绍 111

5.2.2 创建并打开数据库       112

5.2.3 添加、删除和修改操作      112

5.2.4 游标的操作—使用Cursor 115

5.3 安全方便简单—使用SharedPreferences       116

5.4 我的数据大家用—ContentProvider、ContentResolver     117

第六章一张白纸好作画—Canvas画布   120

6.1 Canvas画布介绍      120

6.1.1 View Canvas—使用普通View的Canvas画图   120

6.1.2 Bitmap Canvas—使用普通Bitmap的Canvas画图  121

6.1.3 SurfaceView Canvas—使用SurfaceView的Canvas画图      122

6.2 Canvas常用绘制方法     124

6.3 对Canvas进行变换       126

6.4 Canvas绘制的辅助类     127

6.4.1 画笔android.graphics.Paint    127

6.4.2 字体android.graphics.Typeface    128

6.4.3 颜色android.graphics.Color    129

6.4.4 路径android.graphics.Path     130

6.4.5 路径的高级效果android.graphics.PathEffect   131

6.4.6点类android.graphics.Point和android.graphics.PointF       133

6.4.7 形状类android.graphics.Rect和android.graphics.RectF      134

6.4.8 区域android.graphics.Region与Region.Op      135

6.4.9 千姿百态 矩阵变换android.graphics.Matrix    136

第七章实现炫酷效果—图像和动画 140

7.1 Android的几种常用图像类型      140

7.2 图片的基础—Bitmap(位图)   140

7.2.1 如何获取位图资源       140

7.2.2如果获取位图的信息    141

7.2.3 位图的显示与变换       142

7.3 变化多端—Drawable(绘图类)      144

7.3.1 Drawable的一些常用子类 144

7.3.2 BitmapDrawable    144

7.3.3 点九图片—NinePatchDrawable     145

7.3.4 会动的图片—StateListDrawable    146

7.3.5 颜色填充的另一种方法—PaintDrawable    146

7.3.6 超炫的特效—ShapeDrawable 147

7.3.7 简单的帧动画—AnimationDrawable    154

7.4 轻量级图片—Picture     155

7.5 Drawable、Bitmap、byte[]之间的转换   156

7.6 Android提供的几种动画效果(Animation) 157

7.7 渐变动画—Tween Animation     157

7.7.1 Tween Animation简介       157

7.7.2 Tween Animation共同的属性  157

7.7.3 淡进淡出—AlphaAnimation     158

7.7.4 忽大忽小—ScaleAnimation      159

7.7.5 平移—TranslateAnimation       160

7.7.6 旋转—RotateAnimation     161

7.7.7 实现一个自己的TweenAnimation 162

7.8 渐变动画—Frame Animation      164

7.9 随意组合动画效果—AnimationSet    165

7.10 加速的工具—Interpolator 166

第八章网络的时代—网络开发  167

8.1 Android中网络开发概述       167

8.2 直接基于Socket编程     168

8.2.1 Socket编程简介     168

8.2.2 基于TCP协议的Socket编程   169

8.2.3 基于UDP协议的Socket编程  170

8.3 基于最成熟的Web协议—HTTP协议编程    171

8.3.1 HTTP协议简介      171

8.3.2 使用URL类读取HTTP资源    172

8.3.3 使用HttpURLConnection类访问HTTP资源     174

8.3.4 使用Apache的HttpClient       175

8.4 耗时操作的通用方式—多线程与异步处理     177

8.4.1 多线程和异步处理简介      178

8.4.2 Handler方式   178

8.4.3 AsyncTask类实现后台任务的处理  181

8.5 轻量级的数据交换格式—JSON   184

8.5.1 客户端与服务器端的数据交互 184

8.5.2 XML格式与JSON格式的比较  185

8.5.3 解析JSON格式数据    186

第九章多语言环境的支持和多屏幕的适配   189

9.1 Android程序的资源文件       189

9.1.1 资源文件的目录结构   189

9.1.2 资源文件目录的修饰语      190

9.1.3 程序加载资源文件的步骤  191

9.2 国际化和本地化的支持  192

9.3 多屏幕的适配    193

9.3.1 屏幕参数的基本概念   193

9.3.2 屏幕参数的各种单位及相互转换    194

9.3.3 处理屏幕自适应的方法      195

9.3.4 详细说明Density  196

第十章利用手机特性—结合硬件进行开发   199

10.1 炫酷的人机交互—触摸和手势 199

10.1.1 实现滑动翻页—使用ViewFlipper       199

10.1.2 支持多个手指一起操作—实现多点触摸   204

10.1.3 识别手势—使用GestureDetector       208

10.2 我在哪里—使用定位功能  210

10.3 电话拨打和短信发送   213

10.3.1 调用系统的电话拨打功能      213

10.3.2 实现发送短信的功能       213

10.4 拍照和摄像     215

10.5 使用传感器     217

10.5.1 传感器概述  217

10.5.2 加速度传感器     219

10.5.3 方向传感器  221

10.5.4 其它传感器  222

第十一章避重就轻—结合Web开发Android应用   224

11.1 Android上的Web应用概述     224

11.2 使用WebView载入Web页面 225

11.2.1 Webkit引擎和WebView控件介绍      225

11.2.2 浏览基本的Web页面     226

11.2.3 开启对于JavaScript的支持   227

11.2.4 监听Web页面的载入     227

11.2.5 让WebView支持文件下载    228

11.3 本地代码与Web页面交互       229

11.3.1 向Web页面传递数据     229

11.3.2 本地代码调用Web页面JavaScript方法  230

11.3.3 Web页面调用本地Java方法 231

11.4 Web页面的JavaScript调试      234

11.5 常用移动设备Web开发框架   236

11.5.1 jQuery Mobile框架简介   236

11.5.2 Sencha Touch框架简介   237

11.5.3 PhoneGap开发平台简介  238

第十二章细节决定成败—Android应用程序的优化  240

12.1 对应用内存的优化       240

12.1.1 Android程序的内存概述 240

12.1.2 追踪内存—使用内存优化辅助工具    241

12.1.3 吃内存大户—Bitmap的优化 245

12.1.4 想回收就回收—使用软引用和弱引用       248

12.1.5 注重细节—从代码角度进行优化 250

12.2 对界面UI的优化  253

12.2.1 多利用Android系统的资源  253

12.2.2 抽取相同的布局 256

12.2.3 精简UI层次       257

12.2.4界面延迟加载技术     259

12.3留条后路—对Crash进行处理  260

12.3.1 为什么需要捕获Crash    260

12.3.2 如何捕获和处理Crash    260

参考文献     263

 

 

你可能感兴趣的:(《Android应用开发精解》目录)