新書推薦:
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:NT$
301.0
《
周易
》
售價:NT$
203.0
《
东南亚的传统与发展
》
售價:NT$
306.0
《
乾隆制造
》
售價:NT$
398.0
《
资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册)
》
售價:NT$
1316.0
《
明代社会变迁时期生活质量研究
》
售價:NT$
1367.0
《
律令国家与隋唐文明
》
售價:NT$
332.0
《
紫云村(史杰鹏笔下大唐小吏的生死逃亡,新历史主义小说见微之作,附赠5张与小说内容高度契合的宣纸彩插)
》
售價:NT$
449.0
|
編輯推薦: |
本书是一本Android入门书籍,采用案例驱动式教学,通过50余个案例来讲解Android基础知识在开发中的运用。zui后一章讲解一个网上订餐项目,该项目总结了1~14章的知识点,在网上订餐项目的实现过程中使用了异步线程访问网络、Tomcat服务器、Handler消息通信、JSON解析等知识,这些知识点在后来开发项目中是必须要使用的,因此希望读者认真分析每个模块的逻辑流程,并按照步骤完成项目。
|
內容簡介: |
本书以Android Studio为开发工具,详细全面地介绍了Android编程的核心技术,包括
Android用户界面编程、Android四大组件、数据存储、 事件处理、网络与数据处理、图形图
像处理、多媒体开发等知识。本书不限于介绍Android理论知识,而是从案例驱动的角度讲
解理论。本书每章提供了大量实例,这些示范性的实例可帮助读者深刻理解知识点,除此之外,本书还精心设计了两个阶段案例和一个综合案例,这些案例贴合实际工作需求,能够使读者
真正把书本中的知识应用到实际开发中。
本书附有配套视频、源代码、习题、教学课件等教学资源,同时为了帮助初学者更好地
学习本书中的内容,还提供了在线答疑,希望能够得到更多读者的关注。
本书既可作为高等院校本、专科计算机相关专业的移动互联网课程专用教材,也可本书以Android Studio为开发工具,详细全面地介绍了Android编程的核心技术,包括
Android用户界面编程、Android四大组件、数据存储、 事件处理、网络与数据处理、图形图
像处理、多媒体开发等知识。本书不限于介绍Android理论知识,而是从案例驱动的角度讲
解理论。本书每章提供了大量实例,这些示范性的实例可帮助读者深刻理解知识点,除此之外,本书还精心设计了两个阶段案例和一个综合案例,这些案例贴合实际工作需求,能够使读者
真正把书本中的知识应用到实际开发中。
本书附有配套视频、源代码、习题、教学课件等教学资源,同时为了帮助初学者更好地
学习本书中的内容,还提供了在线答疑,希望能够得到更多读者的关注。
本书既可作为高等院校本、专科计算机相关专业的移动互联网课程专用教材,也可
以作为Android移动开发的培训教材,是一本非常适合Android零基础读者的图书。
|
關於作者: |
黑马程序员是江苏传智播客教育科技股份有限公司(简称传智播客)旗下高端IT教育品牌。传智播客是一家专门致力于高素质软件开发人才培养的高科技公司。
|
目錄:
|
第 1 章 Android基础入门11.1 Android简介 11.1.1 通信技术11.1.2 Android发展历史21.1.3 Android体系结构 31.1.4 Dalvik虚拟机51.2 Android开发环境搭建 51.2.1 Android Studio安装 61.2.2 模拟器创建121.2.3 在Android Studio中下载SDK 161.3 开发第一个Android程序 191.4 Android程序结构221.5 资源的管理与使用 231.5.1 图片资源231.5.2 主题和样式资源 231.5.3 布局资源241.5.4 字符串资源251.5.5 颜色资源 251.5.6 尺寸资源 261.6 程序调试281.6.1 单元测试 281.6.2 LogCat的使用 30本章小结 33本章习题 33第 2 章 Android常见界面布局 352.1 View视图352.2 界面布局编写方式 362.2.1 在XML文件中编写布局362.2.2 在Java代码中编写布局 362.3 常见界面布局 372.3.1 布局的通用属性 372.3.2 RelativeLayout相对布局 382.3.3 LinearLayout线性布局 402.3.4 FrameLayout帧布局432.3.6 ConstraintLayout约束布局 44本章小结 46本章习题 47第 3 章 Android常见界面控件483.1 简单控件的使用 48 3.1.1 TextView 48 3.1.2 Button 50 3.1.3 EditText 53 3.1.4 ImageView.54 3.1.5 RadioButton .55 3.1.6 CheckBox 57 3.1.7 Toast .603.2 AlertDialog对话框的使用60 3.2.1 AlertDialog对话框概述 60 3.2.2 普通对话框 .61 3.2.3 单选对话框 .62 3.2.4 多选对话框 .65 3.2.5 自定义对话框 .683.3 ListView的使用 73 3.3.1 ListView控件的简单使用 .74 3.3.2 常用数据适配器 (Adapter) 74 3.3.3 案例——Android购物 商城 .75 3.4 RecyclerView的使用 78 3.5 自定义View 82 本章小结 .85 本章习题 .85第 4 章 程序活动单元Activity .87 4.1 Activity的生命周期87 4.1.1 生命周期状态 .87 4.1.2 生命周期方法 .88 4.2 Activity的创建、配置、开启 和关闭 .90 4.2.1 创建Activity 90 4.2.2 配置Activity 92 4.2.3 开启和关闭Activity 92 4.3 Intent与IntentFilter .93 4.3.1 Intent 93 4.3.2 IntentFilter .94 4.4 Activity之间的跳转95 4.4.1 在Activity之间数据 传递 .95 4.4.2 Activity之间的数据 回传 .96 4.5 Activity的任务栈和启动模式98 4.5.1 Android中的任务栈 .98 4.5.2 Activity的启动模式 984.6 使用Fragment .100 4.6.1 Fragment简介 100 4.6.2 Fragment的生命周期 101 4.6.3 创建Fragment 101 4.6.4 在Activity中添加 Fragment 102 4.6.5 案例——川菜菜谱 .103 本章小结 .108 本章习题 .109 第 5 章 数据存储 .110 5.1 数据存储方式110 5.2 文件存储111 5.2.1 将数据存入文件中 . 111 5.2.2 从文件中读取数据 . 113 5.2.3 实战演练——保存QQ账号 与密码115 5.3 SharedPreferences存储 . 119 5.3.1 将数据存入 SharedPreferences中 119 5.3.2 读取与删除SharedPreferences 中的数据 . 119 5.3.3 实战演练——保存QQ账号 和密码 120 5.4 SQLite数据库存储 .122 5.4.1 SQLite数据库的创建 122 5.4.2 SQLite数据库的基本 操作 .124 5.4.3 SQLite数据库中的事务 126 5.4.4 实战演练——绿豆 通讯录 .127 本章小结 .130本章习题 .131 第 6 章 阶段案例——记事本 .133 6.1 需求分析 133 6.1.1 业务需求分析 .133 6.1.2 架构分析 .133 6.1.3 数据库类设计分析 .134 6.1.4 界面需求分析 .134 6.2 开发环境介绍 135 6.3 记事本功能业务实现 135 6.3.1 搭建记事本界面布局 .135 6.3.2 搭建记事本界面Item 布局 .135 6.3.3 封装记录信息实体类 .136 6.3.4 编写记事本界面列表 适配器 .136 6.3.5 创建数据库 .138 6.3.6 实现记事本界面的显示 功能 .140 6.3.7 搭建添加记录界面和修改 记录界面的布局 .141 6.3.8 实现添加记录界面的 功能 .142 6.3.9 实现修改记录界面的 功能 .143 6.3.10 删除记事本中的记录 .145 6.3.11 运行结果 .146 本章小结 .147 第 7 章 使用内容提供者共享数据 148 7.1 内容提供者概述 148 7.2 创建内容提供者 149 7.3 访问其他应用程序 1517.3.1 查询其他程序的数据 .151 7.3.2 实战演练——查看系统 短信 .153 7.4 内容观察者 158 7.4.1 什么是内容观察者 .158 7.4.2 实战演练——监测数据 变化 .160 本章小结 .168 本章习题 .168 第 8 章 广播机制 .170 8.1 广播机制概述 170 8.2 广播接收者 171 8.2.1 什么是广播接收者 .171 8.2.2 广播接收者的创建 .172 8.3 自定义广播与广播的类型 174 8.3.1 自定义广播 .174 8.3.2 实战演练——发送求救 广播 .174 8.3.3 广播的类型 .176 8.3.4 实战演练——发送有序 广播 .177 本章小结 .181 本章习题 .181 第 9 章 服务 .183 9.1 服务概述 183 9.2 服务的创建 184 9.3 服务的生命周期 185 9.4 服务的启动方式 186 9.4.1 调用startService方法 启动服务 .186第 10 章 Android事件处理 .202 10.1 事件处理概述 202 10.2 基于回调机制的事件处理 203 10.2.1 基于回调机制的事件 处理简介 .203 10.2.2 onKeyDown方法 203 10.2.3 onKeyUp方法 .206 10.2.4 onTouchEvent方法 .206 10.2.5 onFocusChanged 方法 208 10.3 基于监听接口机制的事件 处理 209 10.3.1 基于监听接口机制的 事件处理简介 .209 10.3.2 OnClickListener接口 .210 10.3.3 OnLongClickListener 接口 .212 10.3.4 OnFocusChangeListener 接口 .213 10.3.5 OnKeyListener接口 .215 10.3.6 OnTouchListener接口 .217 10.4 手势 21710.4.1 手势简介 .218 10.4.2 手势检测 .218 10.4.3 使用GestureLibrary类 添加手势 .219 10.4.4 使用Gestures Builder 软件添加手势 .223 10.4.5 手势识别 .225 10.5 Handler消息机制227 本章小结 .229 本章习题 .229 第 11 章 网络编程 230 11.1 通过HTTP访问网络 .230 11.1.1 HTTP协议通信简介 .230 11.1.2 使用HttpURLConnection 访问网络 .231 11.2 使用WebView进行网络开发.232 11.2.1 使用WebView浏览 网页 .233 11.2.2 使用WebView执行 HTML代码 234 11.2.3 设置WebView支持 JavaScript 235 11.3 JSON数据解析 .238 11.3.1 JSON数据 238 11.3.2 JSON解析 240 11.3.3 实战演练——天气 预报 .243 本章小结 .251 本章习题 .251第 12 章 阶段案例——智能聊天 机器人 .253 12.1 需求分析 253 12.1.1 业务需求分析 .253 12.1.2 模型需求分析 .253 12.1.3 界面需求分析 .254 12.2 开发环境介绍 254 12.3 聊天功能业务实现 255 12.3.1 申请机器人身份标识 .255 12.3.2 搭建聊天界面布局 .256 12.3.3 搭建聊天条目布局 .258 12.3.4 封装聊天信息实体类 .259 12.3.5 编写聊天列表适配器 .260 12.3.6 实现智能机器人通信 .261 本章小结 .266 第 13 章 图形图像处理 267 13.1 常用的绘图类 267 13.1.1 Bitmap类267 13.1.2 BitmapFactory类 .268 13.1.3 Paint类 .268 13.1.4 Canvas类269 13.2 为图像添加特效 269 13.3 动画 272 13.3.1 补间动画 .272 13.3.2 逐帧动画 .278 本章小结 .281 本章习题 .281 第 14 章 多媒体应用开发 .282 14.1 音频的播放 .28214.1.1 MediaPlayer类播放 音频 .282 14.1.2 SoundPool类播放 音频 .284 14.1.3 案例——弹钢琴 286 14.2 视频播放 289 14.2.1 VideoView控件播放 视频 .289 14.2.2 案例——VideoView视频 播放器 .290 14.2.3 MediaPlayer类和 SurfaceView控件播放视频 292 14.2.4 案例——SurfaceView视频 播放器 .293 本章小结 .299 本章习题 .299 第 15 章 综合项目——网上订餐 .300 15.1 项目分析 300 15.1.1 项目概述 .300 15.1.2 开发环境 .300 15.1.3 模块说明 .301 15.2 效果展示 301 15.3 服务器数据准备 303 15.4 店铺功能业务实现 305 15.4.1 搭建标题栏布局 .305 15.4.2 搭建店铺界面布局 .306 15.4.3 搭建店铺Item布局 307 15.4.4 封装店铺信息实体类 .30815.4.5 编写店铺列表适配器 . 311 15.4.6 实现店铺界面显示功能 .313 15.5 店铺详情功能业务实现 .317 15.5.1 搭建店铺详情界面 布局 .317 15.5.2 搭建菜单Item布局 320 15.5.3 搭建购物车Item布局 321 15.5.4 搭建确认清空购物车界面布局 .322 15.5.5 编写菜单列表适配器 .323 15.5.6 编写购物车列表适配器 .326 15.5.7 实现菜单显示与购物车功能 .328 15.6 菜品详情功能业务实现 336 15.6.1 搭建菜品详情界面布局 .336 15.6.2 实现菜品界面显示功能 .337 15.7 订单功能业务实现 338 15.7.1 搭建订单界面布局 .338 15.7.2 搭建订单Item布局 .339 15.7.3 搭建支付界面布局 .340 15.7.4 搭建订单列表适配器 .340 15.7.5 实现订单显示与支付功能 .342 本章小结 344
|
內容試閱:
|
Android是Google公司开发的基于Linux的开源操作系统,主要应用于智能手机、平板电脑等移动设备。经过短短几年的发展,Android系统在全球得到了大规模推广,除智能手机和平板电脑外,还可用于穿戴设备、智能家具等领域。本书是在第一版《Android移动应用基础教程》的基础上修订而成的,主要做了以下改进:(1)全新的Android Studio开发工具,与真实开发环境保持一致。(2)新增了RecyclerView控件的使用、自定义View、Android事件的处理、手势的创建与识别等更实用的知识模块。(3)新增了两个阶段案例和一个综合案例,更有利于知识的巩固学习。如何使用本书本书是一本Android入门书籍,采用案例驱动式教学,通过50余个案例来讲解Android基础知识在开发中的运用。在学习本书之前,一定要具备Java基础知识,众所周知,Android开发使用的是Java语言。初学者在使用本书时,建议从头开始循序渐进地学习,并且反复练习书中的案例,以达到熟能生巧、为我所用的目的。如果是有基础的编程人员,则可以选择感兴趣的章节跳跃式地学习,不过书中的案例zui好动手实践一下。如果在学习过程中遇到障碍,可以先回到前面的相关章节重新学习,然后依照关联性继续学习后续章节,依照这种方式学习能够让本书发挥zui大的作用。本书共分为15章,简单介绍如下:?第1~3章主要讲解Android的基础知识,包括Android起源、Android体系结构、开发环境搭建、JUnit单元测试、常见界面布局、常见界面控件等。通过这3章的学习,初学者可以创建简单的布局界面。?第4章主要讲解Activity与Fragment,包括生命周期、创建、使用等。通过本章的学习,初学者可以完成简单的界面交互操作,并且实现相应的点击事件。第5章主要讲解Android中的数据存储,包括文件存储、SharedPreferences、SQLite数据库等知识,并提供保存QQ账号与密码、绿豆通讯录等实际开发中的案例。本章的知识非常重要,几乎每个Android程序都会涉及数据存储,因此要求初学者一定要熟练掌握这部分内容。?第6章主要讲解一个记事本项目,该项目总结了前面1~5章的知识点。在记事本项目的实现过程中熟悉了ListView控件的使用、数据库的相关操作、Activity的跳转以及数据回传等知识点,这些知识点在Android项目中会经常使用,因此要求大家能够熟练掌握本章内容,方便后续开发其他项目。?第7~9章主要讲解Android中的三个组件,分别是内容提供者、广播接收者以及服务,包括内容提供者的创建、访问其他应用程序、内容观察者、广播的创建、发送与接收、服务的创建、生命周期,并讲解了音乐播放器等案例。通过这三章的学习,初学者可以使用内容提供者、服务以及广播开发后台程序。?第10章主要讲解Android事件处理,包括基于回调机制的事件处理、基于监听接口机制的事件处理、手势以及Handler消息机制等知识,通过对本章的学习,可以掌握Android中常见的事件处理的知识。?第11章主要讲解Android中的网络编程,包括HTTP协议、HttpURLConnection访问网络、数据提交方式、使用WebView进行网络开发以及JSON解析等知识,并提供了天气预报等案例。通过本章的学习,初学者可以完成网络请求的过程,并解析获取的JSON数据等。?第12章主要讲解一个智能聊天机器人项目,该项目总结了7~11章的知识点,在智能聊天机器人项目的实现过程中熟悉了网络请求、JSON解析、Handler处理等知识点,这些知识点会在后来的Android项目中经常使用,因此要求初学者熟练掌握本章内容。?第13~14章主要讲解Android中的图形图像处理和多媒体应用开发的相关知识,包括绘图、动画、为图像添加特效、音频与视频的播放等知识,通过这两章的学习,初学者可以掌握视频播放器、音乐播放器、动画以及图像特效的开发原理。?第15章主要讲解一个网上订餐项目,该项目总结了1~14章的知识点,在网上订餐项目的实现过程中使用了异步线程访问网络、Tomcat服务器、Handler消息通信、JSON解析等知识,这些知识点在后来开发项目中是必须要使用的,因此希望读者认真分析每个模块的逻辑流程,并按照步骤完成项目。致谢本书的编写和整理工作由传智播客教育科技有限公司完成,主要参与人员有吕春林、高美云、柴永菲、闫文华等,研发小组全体成员在这近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。意见反馈尽管我们尽了zui大的努力,但书中难免会有不妥之处,欢迎各界专家和读者朋友们来信给予宝贵意见,我们将不胜感激。您在阅读本书时,如发现任何问题或有不认同之处,可以通过电子邮件与我们取得联系。请发送电子邮件至:itcast_book@vip.sina.com。黑马程序员2018年12月于北京
|
|