图书介绍
Head First Android开发 第2版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (美)Dawn Griffiths,(美)David Griffiths 著
- 出版社: 北京:中国电力出版社
- ISBN:9787519821500
- 出版时间:2018
- 标注页数:888页
- 文件大小:86MB
- 文件页数:930页
- 主题词:移动终端-应用程序-程序设计
PDF下载
下载说明
Head First Android开发 第2版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
1入门 投身新领域2
欢迎来到Android世界2
Android平台剖析3
我们要做的工作4
你的开发环境5
安装Android Studio6
构建一个基本应用7
如何构建应用8
活动和布局概览12
如何构建应用(续)13
你已经创建了你的第一个Android应用15
Android Studio会为你创建一个完整的文件夹结构16
工程中的有用文件17
用Android Studio编辑器编辑代码18
在Android模拟器上运行应用23
创建Android虚拟设备24
在模拟器中运行应用27
可以在控制台上查看进度28
发生了什么30
改进应用31
布局里有什么32
activity_main.xml包含两个元素33
更新布局中显示的文本34
试一试应用35
你的Android工具箱36
2构建交互式应用 真正有用的应用38
构建一个啤酒荐酒师应用38
创建工程40
我们已经创建了默认活动和布局41
详细介绍设计编辑器42
使用设计编辑器增加一个按钮43
activity_find_beer.xml有一个新按钮44
仔细查看布局代码45
试一试应用49
硬编码文本很难实现本地化50
创建字符串资源51
在布局中使用字符串资源52
activity_find_beer.xml的代码53
向spinner增加值56
向strings.xml增加string-array57
试一试spinner58
需要让按钮做些事情59
让按钮调用一个方法60
活动代码61
为活动增加onClickFindBeer()方法62
onClickFindBeer()需要做些什么63
一旦有了View,就能访问它的方法64
更新活动代码65
活动的第一个版本67
这些代码做什么68
构建定制Java类70
运行代码时发生了什么74
试一试应用75
你的Android工具箱76
3多个活动和意图 说出你的意图78
应用可以包含多个活动78
应用结构79
开始吧:创建工程79
更新布局80
创建第二个活动和布局82
认识Android清单文件84
意图是一个消息类型86
运行应用时会发生什么88
向第二个活动传递文本90
更新文本视图属性91
putExtra()在意图中增加额外的信息92
更新CreateMessageActivity代码95
让ReceiveMessageActivity使用意图中的信息96
用户单击Send Message按钮时发生了什么97
可以修改应用向其他人发送消息98
Android应用如何工作99
创建意图指定一个动作101
修改意图来使用动作102
Android如何使用意图过滤器106
如果总是想让用户选择活动该怎么做112
调用createChooser()时发生了什么113
修改代码创建选择器115
你的Android工具箱118
4活动生命周期 活动的一生120
活动到底如何工作120
秒表应用122
增加字符串资源123
活动代码如何工作125
为按钮增加代码126
runTimer()方法127
完整的runTimer()代码129
完整的StopwatchActivity代码130
旋转屏幕会改变设备配置136
活动的状态137
活动生命周期:从创建到撤销138
更新的StopwatchActivity代码142
运行应用时发生了什么143
活动的生命中不只是有创建和撤销146
更新的StopwatchActivity代码151
运行应用时会发生什么152
不过如果应用只是部分可见会怎么样154
活动生命周期:前台生命期155
如果活动暂停就停止秒表158
实现onPause()和onResume()方法159
完整的活动代码160
运行应用时发生了什么163
生命周期方法快速指南167
你的Android工具箱168
5视图和视图组 享受视图170
用户界面由布局和GUI组件组成170
LinearLayout将视图显示在一行或一列中171
增加尺寸资源文件为不同布局指定一致的内边距174
使用外边距增加视图间的距离176
调整基本线性布局177
增加权重扩展视图179
android:gravity属性的可用值183
完整的线性布局代码186
帧布局叠放视图188
为工程增加一个图像189
嵌套布局的完整代码192
FrameLayout:小结193
使用视图201
可编辑文本视图202
开关按钮204
开关205
复选框206
单选钮208
Spinner210
图像视图211
为按钮增加图像213
滚动视图215
toast216
你的Android工具箱220
6约束布局 集中在一起222
嵌套布局可能效率很低222
引入约束布局223
确保你的工程包含约束布局库224
向strings.xml增加字符串资源225
使用蓝图工具226
使用约束指定视图位置227
增加一个垂直约束228
对蓝图的改变会反映到XML中229
如何让视图居中230
通过更新偏差调整视图的位置231
如何改变视图的大小232
如何对齐视图238
建立一个真正的布局239
首先,增加上面一行视图240
推导约束特性会猜测要增加哪些约束241
为蓝图增加下一行……242
最后,为消息增加一个视图243
试一试应用244
你的Android工具箱245
7列表视图和适配器 合理组织248
所有应用都从想法开始248
使用ListView导航到数据251
饮料详细信息活动253
Starbuzz应用结构254
Drink类256
顶级布局包含一个图像和一个列表258
完整的顶级布局代码260
利用监听器让列表视图响应单击261
为列表视图设置监听器262
类别活动显示一个类别的数据267
更新activity_drink_category.xml268
非静态数据要使用适配器269
用数组适配器连接列表视图和数组270
为DrinkCategory Activity增加数组适配器271
应用回顾:我们做了哪些工作274
如何在TopLevelActivity中处理单击276
完整的DrinkCategory Activity代码278
用数据更新视图281
DrinkActivity代码283
运行应用时发生了什么284
你的Android工具箱288
8支持库和应用条 走捷径290
好应用都有清晰的结构290
不同类型的导航291
应用主题来增加应用条293
创建披萨应用295
增加v7 AppCompat支持库296
AndroidManifest.xml可以改变应用条的外观299
如何应用主题300
在样式资源文件中定义样式301
定制应用的外观303
在颜色资源文件中定义颜色304
activity_main.xml的代码305
ActionBar与Toolbar比较306
在活动布局中包含工具条312
为应用条增加动作315
增加标签来改变应用条文本318
AndroidManifest.xml的代码319
控制动作的外观322
完整的MainActivity.java代码325
启用向上导航327
在应用条上共享内容331
为menu_ main.xml增加一个共享动作提供者332
用意图指定内容333
完整的MainActivity.java代码334
你的Android工具箱337
9片段 模块化340
你的应用在所有设备上都要表现良好340
应用可能还要有不同的行为341
片段支持重用代码342
应用的手机版本343
创建工程和活动345
为MainActivity的布局增加一个按钮346
如何向工程增加片段348
片段的onCreateView()方法350
向活动布局增加片段352
让片段与活动交互359
Workout类360
向片段传递训练项目ID361
让活动设置训练项目ID363
片段生命周期365
在片段的onStart()方法中设置视图的值367
如何创建列表片段374
更新的WorkoutListFragment代码377
activity_main.xml的代码381
连接列表和详细信息384
WorkoutListFragment.java的代码387
MainActivity需要实现接口388
DetailActivity需要向WorkoutDetailFragment传递ID389
你的Android工具箱392
10面向更大界面的片段 不同大小,不同界面394
Workout用在手机和平板电脑上看上去是一样的394
面向更大界面的设计395
应用的手机版本396
应用的平板电脑版本397
创建一个平板电脑AVD399
将屏幕特定资源放在屏幕特定文件夹中402
不同的文件夹选项403
平板电脑使用layout-large文件夹中的布局408
更新后的代码会做什么410
我们要修改itemClicked()代码412
希望片段处理后退按钮413
认识后退堆栈414
后退堆栈事务并不只是活动415
通过编程使用帧布局替换片段416
利用布局差别区分设备使用的布局417
修改后的MainActivity代码418
使用片段事务419
更新的MainActivity代码423
旋转平板电脑时应用会出问题427
(再谈)保存活动的状态428
更新的WorkoutDetailFragment.java代码430
你的Android工具箱432
11动态片段 嵌套片段434
增加动态片段434
应用的新版本436
创建TempActivity437
TempActivity需要扩AppCompatActivity438
StopwatchFragment.java的代码444
StopwatchFragment布局447
将StopwatchFragment增加到TempActivity的布局449
onClick属性调用活动中的方法,而不是片段的方法452
将OnClickListener关联到按钮457
StopwatchFragment代码458
旋转设备会重置秒表462
对静态片段使用〈fragment〉……463
修改activity_temp.xml来使用FrameLayout464
TempActivity.java的完整代码467
为WorkoutDetailFragment增加秒表469
完整的WorkoutDetailFragment.java代码476
你的Android工具箱480
12设计支持库 向右滑动482
再来看披萨应用482
应用结构483
使用视图分页控件在片段间滑动489
为MainActivity的布局增加一个视图分页控件490
使用片段分页控件适配器让视图分页控件了解页面491
片段分页控件适配器的代码492
完整的MainActivity java代码494
为MainActivity增加标签页导航498
如何向布局增加标签页499
将标签页布局关联到视图分页控件501
完整的MainActivity.java代码502
设计支持库帮助你实现材料设计506
让工具条响应滚动508
向MainActivity的布局增加一个协调器布局509
如何协调滚动行为510
为TopFragment增加可滚动的内容512
完整的fragment_top.xml代码515
向OrderActivity增加折叠工具条517
如何创建一个普通的折叠工具条518
如何为折叠工具条增加图像523
更新后的activity_order.xml代码524
FAB和snackbar526
更新后的activity_order.xml代码528
完整的OrderActivity.java代码533
你的Android工具箱535
13回收视图和卡片视图 回收538
披萨应用还有工作要做538
回收视图概览539
增加披萨数据541
在卡片中显示披萨数据542
如何创建卡片视图543
完整的card captioned_image.xml代码544
增加回收视图适配器546
定义适配器的视图持有者548
覆盖onCreateViewHolder()方法549
为卡片视图增加数据550
完整的CaptionedImagesAdapterjava代码551
创建回收视图553
为PizzaFragment的布局增加RecyclerView554
完整的PizzaFragment.java代码555
回收视图使用一个布局管理器排列视图556
指定布局管理器557
完整的PizzaFragment.java代码558
让回收视图响应单击566
创建PizzaDetailActivity567
PizzaDetailActivity.java的代码569
让回收视图响应单击570
可以从适配器监听视图事件571
使你的适配器可重用572
为适配器增加接口573
PizzaFragment.java中实现监听器575
你的Android工具箱578
14导航抽屉 周游世界580
标签页布局允许用户轻松导航……580
我们要为一个新email应用创建一个导航抽屉581
导航抽屉解析582
创建CatChat工程584
创建InboxFragment585
创建DraftsFragment586
创建SentItemsFragment587
创建TrashFragment588
创建一个工具条布局589
更新应用的主题590
创建HelpActivity591
创建FeedbackActivity592
创建导航抽屉头部594
完整的nav header.xml代码595
如何分组598
把支持区段增加为一个子菜单600
完整的menu nav.xml代码601
如何创建导航抽屉602
完整的activity_main.xml代码603
为MainActivity的帧布局增加InboxFragment604
增加抽屉开关607
用户点击抽屉中的菜单项时做出响应608
实现onNavigationItemSelected()方法609
用户按后退按钮时关闭抽屉614
完整的MainActivity.java代码615
你的Android工具箱619
15SQLite数据库 启动数据库622
再来看Starbuzz622
Android使用SQLite数据库持久存储数据623
Android提供了一些SQLite类624
当前的Starbuzz应用结构625
修改应用来使用数据库626
SQLite帮助器管理数据库627
创建SQLite帮助器628
SQLite数据库内部630
使用结构化查询语言(SQL)创建表631
使用insert()方法插入数据632
插入多个记录633
StarbuzzDatabaseHelper代码634
SQLite帮助器代码会做什么635
如果想要修改数据库呢?636
SQLite数据库有一个版本号637
改变版本号时会发生什么638
用onUpgrade()升级数据库640
用onDowngrade()降级数据库641
下面来升级数据库642
升级现有的数据库645
用update()方法更新记录646
对多个列应用条件647
修改数据库结构649
删除表650
完整的SQLite帮助器代码651
你的Android工具箱656
16基本游标 取出数据658
目前为止完成的工作……658
Starbuzz应用的新结构659
如何修改DrinkActivi来使用Starbuzz数据库660
目前的DrinkActivity代码661
得到数据库引用662
用游标从数据库获取数据663
从一个表返回所有记录664
以特定顺序返回记录665
返回选择的记录666
到目前为止的DrinkActivity代码669
要从游标读取记录,首先需要导航到这个记录670
导航游标671
获取游标值672
DrinkActivity代码673
目前为止完成的工作675
目前的DrinkCategoryActivity代码677
得到Starbuzz数据库的一个引用……678
如何替换列表视图中的数组数据?679
简单游标适配器将游标数据映射到视图680
如何使用简单游标适配器681
关闭游标和数据库682
未完,继续683
修改后的DrinkCategory Activity代码688
DrinkCategory Activity代码(续)689
你的Android工具箱691
17游标与asynctasks 保持在后台694
我们希望Starbuzz应用更新数据库数据694
向DrinkActivity的布局增加一个复选框696
显示FAVORITE列的值697
响应单击事件来更新数据库698
完整的DrinkActivity.java代码701
在TopLevelActivity中显示用户的最爱705
重构TopLevelActivity.java707
新的TopLevelActivity.java代码710
用changeCursor()改变游标715
哪些代码在哪个线程中运行?723
AsyncTask完成异步任务724
onPreExecute()方法725
doInBackground()方法726
onProgressUpdate()方法727
onPostExecute()方法728
AsyncTask类729
完整的UpdateDrinkTask类730
完整的DrinkActivity java代码732
你的Android工具箱737
AsyncTask步骤小结737
18启动式服务 愿意为您效劳740
服务在后台工作740
创建一个启动式服务741
使用IntentService类创建一个基本启动式服务742
如何记录消息日志743
完整的DelayedMessageService代码744
在AndroidManifest.xml中声明服务745
为activity_main.xml增加一个按钮746
使用startService()启动服务747
启动式服务的状态750
启动式服务生命周期:从创建到撤销751
服务继承了生命周期方法752
Android有一个内置的通知服务755
我们将使用AppCompat支持库的通知756
创建一个通知生成器757
使用内置通知服务发出通知759
完整的DelayedMessageService.java代码760
你的Android工具箱765
19绑定式服务和权限 绑定在一起768
绑定式服务绑定到其他组件768
创建一个新服务770
实现一个绑定器771
为服务增加一个getDistance()方法772
更新MainActivity的布局773
创建一个ServiceConnection775
使用bindService()绑定服务778
使用unbindService()与服务解除绑定779
调用OdometerService的getDistance()方法780
完整的MainActivity java代码781
绑定式服务的状态787
增加AppCompat支持库790
为OdometerService增加位置监听器792
更新的OdometerService代码795
计算走过的距离796
完整的OdometerService.java代码798
让应用请求权限802
检查用户对权限请求的响应805
将通知代码增加到onRequestPermissionsResults()809
完整的MainActivity.java代码811
你的Android工具箱815
很高兴你能来到Android世界816
1.发布你的应用862
2.内容提供者863
3.加载器864
4.同步适配器864
5.广播865
6.WebView类866
7.设置867
8.动画868
9.APP部件869
10.自动测试870
热门推荐
- 1749077.html
- 3162479.html
- 1954377.html
- 178210.html
- 2414856.html
- 2329091.html
- 2532772.html
- 3802480.html
- 2872574.html
- 2318678.html
- http://www.ickdjs.cc/book_1514822.html
- http://www.ickdjs.cc/book_1409014.html
- http://www.ickdjs.cc/book_1615605.html
- http://www.ickdjs.cc/book_3576318.html
- http://www.ickdjs.cc/book_1056675.html
- http://www.ickdjs.cc/book_1424.html
- http://www.ickdjs.cc/book_275297.html
- http://www.ickdjs.cc/book_3717450.html
- http://www.ickdjs.cc/book_1220647.html
- http://www.ickdjs.cc/book_3396414.html