注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計Jetpack Compose從入門到實戰(zhàn)

Jetpack Compose從入門到實戰(zhàn)

Jetpack Compose從入門到實戰(zhàn)

定 價:¥109.00

作 者: 王鵬,關振智,曾思淇 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787111711377 出版時間: 2022-08-01 包裝: 平裝
開本: 16開 頁數(shù): 331 字數(shù):  

內容簡介

  Jetpack Compose是谷歌推出的全新Android UI開發(fā)框架,它采用更為先進的聲明式開發(fā)思想,極大地提升了應用界面的開發(fā)效率。 Compose顛覆性的設計理念使得其學習曲線較為陡峭,因此本書對知識點進行了系統(tǒng)全面的整理和編排。全書共分11章,從寫第一行Hello World到實現(xiàn)一個全功能的產品級項目,幫助讀者規(guī)劃出了從入門到精通的*佳學習路徑。除了對知識點細致的講解之外,書中還穿插了大量源碼示例和*佳實踐,幫助讀者及時鞏固所學的內容,真正達到學以致用。 本書適合Jetpack Compose初學者閱讀,同時書中的很多經驗總結,對于已經有一定基礎的開發(fā)者也同樣具有參考價值。

作者簡介

  王鵬,谷歌開發(fā)者專家(GDE),字節(jié)跳動移動端架構師,CSDN、掘金知名博主,GDG 社區(qū)特邀講師,多次受邀在 Google DevFest、I/O Extended 等活動進行演講,國內首批一批接觸 Compose 的開發(fā)者,熱衷于 Android Jetpack 新技術的實踐與推廣。關振智, 北京郵電大學計算機系碩士,國內*早一批接觸 Compose 的開發(fā)者,Jetpack Compose 中文技術社區(qū)核心成員。掘金優(yōu)秀創(chuàng)作者, 谷歌開發(fā)者社區(qū)特邀嘉賓講師,產出的大量技術內容在社區(qū)廣受好評。熱愛技術,樂于分享。曾思淇,Jetpack Compose 中文技術社區(qū)主要維護者,開源技術愛好者,熱衷于 Compose 相關技術的研究與推廣,為社區(qū)貢獻了大量 Compose 入門教程,基于 Compose 開發(fā)過多個獨立 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搭建開發(fā)環(huán)境/
1.2.1準備所需要的開發(fā)工具/
1.2.2部署開發(fā)環(huán)境/
1.3創(chuàng)建第一個Compose應用/
1.3.1創(chuàng)建新的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實現(xiàn)原理/
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章 狀態(tài)管理與重組/
4.1狀態(tài)管理/
4.1.1什么是狀態(tài)?/
4.1.2單向數(shù)據(jù)流/
4.1.3Stateless與Stateful/
4.1.4狀態(tài)的定義/
4.1.5狀態(tài)上提/
4.1.6狀態(tài)的持久化與恢復/
4.1.7使用ViewModel管理狀態(tài)/
4.1.8LiveData、RxJava、Flow轉State/
4.1.9狀態(tài)的分層管理/
4.2重組與自動刷新/
4.2.1智能的重組/
4.2.2避免重組的“陷阱”/
4.2.3如何確定重組范圍?/
4.2.4優(yōu)化重組的性能/
4.3生命周期與副作用/
4.3.1Composable的生命周期/
4.3.2Composable的副作用/
4.3.3副作用API/
4.3.4異步處理的副作用API/
4.3.5狀態(tài)創(chuàng)建的副作用API/
4.3.6副作用API的觀察參數(shù)/
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實戰(zhàn):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動畫規(guī)格/
6.5.1spring彈跳動畫/
6.5.2tween補間動畫/
6.5.3keyframes關鍵幀動畫/
6.5.4repeatable循環(huán)動畫/
6.5.5infiniteRepeatable無限循環(huán)動畫/
6.5.6snap快閃動畫/
6.5.7使用Easing控制動畫節(jié)奏/
6.6AnimationVector動畫矢量值/
6.6.1TwoWayConverter/
6.6.2自定義實現(xiàn)TwoWayConverter/
6.7實戰(zhàn):Compose實現(xiàn)骨架屏的動畫
效果/
6.7.1定義背景色/
6.7.2為Brush添加動畫/
6.7.3實現(xiàn)骨架屏布局/
6.8實戰(zhàn):Compose實現(xiàn)收藏按鈕動畫
效果/
6.8.1實現(xiàn)方式1:高級別API
(AnimatedContent)/
6.8.2實現(xiàn)方式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導航時攜帶參數(shù)/
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創(chuàng)建Lottie動畫/
9.3Coil/
9.3.1配置依賴/
9.3.2AsyncImage/
9.3.3SubcomposeAsyncImage/
9.3.4AsyncImagePainter/
9.4本章小結/
第10章 項目實戰(zhàn):小游戲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、發(fā)送Action/
10.4.3Clicable:分發(fā)事件/
10.5訂閱游戲狀態(tài)(ViewState)/
10.5.1ViewState/
10.5.2Action/
10.5.3reduce/
10.6預覽游戲畫面/
第11章 項目實戰(zhàn):聊天應用Chatty/
11.1整體系統(tǒng)架構/
11.2登錄注冊模塊/
11.3IM聊天模塊/
11.3.1對話列表頁/
11.3.2對話詳情頁/
11.4聯(lián)系人模塊/
11.4.1通訊錄頁/
11.4.2添加搜索頁/
11.4.3二維碼掃描頁/
11.4.4陌生人信息頁/
11.5用戶信息模塊/
11.5.1個人信息頁/
11.5.2信息編輯頁/
11.5.3聯(lián)系人信息頁/
11.6發(fā)現(xiàn)模塊/
11.7適配暗黑主題/

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號