• Jetpack Compose 从入门到实战
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

Jetpack Compose 从入门到实战

全新正版未拆封

52.75 4.8折 109 全新

库存2件

山东济宁
认证卖家担保交易快速发货售后保障

作者王鹏 关振智 曾思淇 著

出版社机械工业出版社

出版时间2022-07

版次1

装帧其他

上书时间2023-04-08

天吾之青豆的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
图书标准信息
  • 作者 王鹏 关振智 曾思淇 著
  • 出版社 机械工业出版社
  • 出版时间 2022-07
  • 版次 1
  • ISBN 9787111711377
  • 定价 109.00元
  • 装帧 其他
  • 开本 16开
  • 纸张 胶版纸
  • 页数 340页
  • 字数 534千字
【内容简介】
Jetpack Compose是谷歌推出的全新Android UI开发框架,它采用更为先进的声明式开发思想,极大地提升了应用界面的开发效率。 Compose颠覆性的设计理念使得其学习曲线较为陡峭,因此本书对知识点进行了系统全面的整理和编排。全书共分11章,从写第一行Hello World到实现一个全功能的产品级项目,帮助读者规划出了从入门到精通的*佳学习路径。除了对知识点细致的讲解之外,书中还穿插了大量源码示例和*佳实践,帮助读者及时巩固所学的内容,真正达到学以致用。
  本书适合Jetpack Compose初学者阅读,同时书中的很多经验总结,对于已经有一定基础的开发者也同样具有参考价值。
【作者简介】
王鹏,谷歌开发者专家(GDE),字节跳动移动端架构师,CSDN、掘金知名博主,GDG 社区特邀讲师,多次受邀在 Google DevFest、I/O Extended 等活动进行演讲,国内首批一批接触 Compose 的开发者,热衷于 Android Jetpack 新技术的实践与推广。

关振智, 北京邮电大学计算机系硕士,国内*早一批接触 Compose 的开发者,Jetpack Compose 中文技术社区核心成员。掘金优秀创作者, 谷歌开发者社区特邀嘉宾讲师,产出的大量技术内容在社区广受好评。热爱技术,乐于分享。

曾思淇,Jetpack Compose 中文技术社区主要维护者,开源技术爱好者,热衷于 Compose 相关技术的研究与推广,为社区贡献了大量 Compose 入门教程,基于 Compose 开发过多个独立 App。
【目录】
前言

第1章 全新的Android UI框架/

1.1Jetpack Compose是什么?/

1.1.1谷歌为什么要推出Compose?/

1.1.2命令式UI与声明式UI/

1.1.3Compose API设计原则/

1.1.4Compose与View的关系/

1.1.5不只是Android UI框架/

1.2搭建开发环境/

1.2.1准备所需要的开发工具/

1.2.2部署开发环境/

1.3创建第一个Compose应用/

1.3.1创建新的Compose项目/

1.3.2保持Compose版本更新/

1.3.3在模拟器中运行Compose应用/

1.3.4分析第一个Compose应用/

1.3.5对Compose应用进行预览/

1.3.6已有项目引入Compose/

1.4本章小结/

第2章 了解常用UI组件/

2.1Modifier修饰符/

2.1.1常用修饰符/

2.1.2作用域限定Modifier修饰符/

2.1.3Modifier实现原理/

2.2常用的基础组件/

2.2.1文字组件/

2.2.2图片组件/

2.2.3按钮组件/

2.2.4选择器/

2.2.5对话框/

2.3常用的布局组件/

2.3.1线性布局/

2.3.2帧布局/

2.3.3Spacer留白/

2.3.4ConstraintLayout约束布局/

2.3.5Scaffold脚手架/

2.4列表/

2.4.1Lazy Composables/

2.4.2LazyListScope作用域/

2.4.3内容填充/

2.5本章小结/

第3章 定制UI视图/

3.1构建UI页面/

3.1.1配置颜色、字体与形状/

3.1.2Welcome欢迎页/

3.1.3LoginIn登录页/

3.1.4Home主页/

3.1.5布局预览/

3.2主题/

3.2.1MaterialTheme介绍/

3.2.2理解MaterialTheme与

CompositionLocal/

3.2.3定制主题方案/

3.3本章小结/

第4章 状态管理与重组/

4.1状态管理/

4.1.1什么是状态?/

4.1.2单向数据流/

4.1.3Stateless与Stateful/

4.1.4状态的定义/

4.1.5状态上提/

4.1.6状态的持久化与恢复/

4.1.7使用ViewModel管理状态/

4.1.8LiveData、RxJava、Flow转State/

4.1.9状态的分层管理/

4.2重组与自动刷新/

4.2.1智能的重组/

4.2.2避免重组的“陷阱”/

4.2.3如何确定重组范围?/

4.2.4优化重组的性能/

4.3生命周期与副作用/

4.3.1Composable的生命周期/

4.3.2Composable的副作用/

4.3.3副作用API/

4.3.4异步处理的副作用API/

4.3.5状态创建的副作用API/

4.3.6副作用API的观察参数/

4.4本章小结/

第5章 Compose组件渲染流程/

5.1组合/

5.2布局/

5.2.1Layout Modifier/

5.2.2LayoutComposable/

5.2.3固有特性测量Intrinsic/

5.2.4SubcomposeLayout/

5.3绘制/

5.3.1Canvas Composable/

5.3.2DrawModifier/

5.3.3使用平台原生Canvas/

5.3.4实战:Canvas绘制波浪加载/

5.4本章小结/

第6章 让页面动起来:动画/

6.1动画分类/

6.2高级别动画API/

6.2.1AnimatedVisibiliy/

6.2.2AnimatedContent/

6.2.3Crossfade/

6.2.4Modifier.animateContentSize/

6.3低级别动画API/

6.3.1animate*AsState/

6.3.2Animatable/

6.4Transition过渡动画/

6.4.1updateTransition/

6.4.2rememberInfiniteTransition/

6.5AnimationSpec动画规格/

6.5.1spring弹跳动画/

6.5.2tween补间动画/

6.5.3keyframes关键帧动画/

6.5.4repeatable循环动画/

6.5.5infiniteRepeatable无限循环动画/

6.5.6snap快闪动画/

6.5.7使用Easing控制动画节奏/

6.6AnimationVector动画矢量值/

6.6.1TwoWayConverter/

6.6.2自定义实现TwoWayConverter/

6.7实战:Compose实现骨架屏的动画

效果/

6.7.1定义背景色/

6.7.2为Brush添加动画/

6.7.3实现骨架屏布局/

6.8实战:Compose实现收藏按钮动画

效果/

6.8.1实现方式1:高级别API

(AnimatedContent)/

6.8.2实现方式2:低级别API

(updateTransition)/

6.9本章小结/

第7章 增进交互体验:手势处理/

7.1常用的手势处理Modifier/

7.1.1Clickable点击/

7.1.2CombinedClickable复合点击/

7.1.3Draggable拖动/

7.1.4Swipeable滑动/

7.1.5Transformable多点触控/

7.1.6Scrollable滚动/

7.1.7NestedScroll嵌套滑动/

7.2定制手势处理/

7.2.1使用PointerInput Modifier/

7.2.2手势事件方法作用域

awaitPointerEventScope/

7.3手势结合动画/

7.4本章小结/

第8章 为Compose添加页面导航/

8.1在Compose中使用Navigation/

8.1.1认识Jetpack Navigation/

8.1.2Navigation for Compose/

8.1.3导航时携带参数/

8.1.4Navigation搭配底部导航栏/

8.1.5嵌套导航图Nested Navigation 

Graph/

8.1.6导航DeepLinks/

8.1.7Navigation对ViewModel的

支持/

8.2在Compose中使用Hilt/

8.2.1认识Dagger Hilt/

8.2.2在Compose中使用Hilt/

8.3本章小结/

第9章 Accompanist与第三方组件库/

9.1Accompanist/

9.1.1SystemUiController/

9.1.2Pager/

9.1.3SwipeRefresh/

9.1.4Flow Layouts/

9.1.5Insets/

9.2Lottie/

9.2.1配置依赖/

9.2.2Lottie动画资源/

9.2.3创建Lottie动画/

9.3Coil/

9.3.1配置依赖/

9.3.2AsyncImage/

9.3.3SubcomposeAsyncImage/

9.3.4AsyncImagePainter/

9.4本章小结/

第10章 项目实战:小游戏Tetris/

10.1整体项目架构/

10.2砖块矩阵(BrickMatrix)/

10.2.1drawBrick绘制砖块单元/

10.2.2drawMatrix绘制砖块

矩阵/

10.3下落中的砖块(Sprite)/

10.3.1Shape砖块组合形状/

10.3.2Sprite定义下落砖块/

10.3.3drawSprite绘制下落砖块/

10.4游戏机体(GameBody)/

10.4.1GameButton/

10.4.2组装Button、发送Action/

10.4.3Clicable:分发事件/

10.5订阅游戏状态(ViewState)/

10.5.1ViewState/

10.5.2Action/

10.5.3reduce/

10.6预览游戏画面/

第11章 项目实战:聊天应用Chatty/

11.1整体系统架构/

11.2登录注册模块/

11.3IM聊天模块/

11.3.1对话列表页/

11.3.2对话详情页/

11.4联系人模块/

11.4.1通讯录页/

11.4.2添加搜索页/

11.4.3二维码扫描页/

11.4.4陌生人信息页/

11.5用户信息模块/

11.5.1个人信息页/

11.5.2信息编辑页/

11.5.3联系人信息页/

11.6发现模块/

11.7适配暗黑主题/
点击展开 点击收起

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP