注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Jetpack Compose從入門到實(shí)戰(zhàn)

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

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

定 價(jià):¥109.00

作 者: 王鵬,關(guān)振智,曾思淇 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

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

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

  王鵬,谷歌開發(fā)者專家(GDE),字節(jié)跳動(dòng)移動(dòng)端架構(gòu)師,CSDN、掘金知名博主,GDG 社區(qū)特邀講師,多次受邀在 Google DevFest、I/O Extended 等活動(dòng)進(jìn)行演講,國內(nèi)首批一批接觸 Compose 的開發(fā)者,熱衷于 Android Jetpack 新技術(shù)的實(shí)踐與推廣。關(guān)振智, 北京郵電大學(xué)計(jì)算機(jī)系碩士,國內(nèi)*早一批接觸 Compose 的開發(fā)者,Jetpack Compose 中文技術(shù)社區(qū)核心成員。掘金優(yōu)秀創(chuàng)作者, 谷歌開發(fā)者社區(qū)特邀嘉賓講師,產(chǎn)出的大量技術(shù)內(nèi)容在社區(qū)廣受好評(píng)。熱愛技術(shù),樂于分享。曾思淇,Jetpack Compose 中文技術(shù)社區(qū)主要維護(hù)者,開源技術(shù)愛好者,熱衷于 Compose 相關(guān)技術(shù)的研究與推廣,為社區(qū)貢獻(xiàn)了大量 Compose 入門教程,基于 Compose 開發(fā)過多個(gè)獨(dú)立 App。

圖書目錄

◆ 目錄:◆
前言
第1章 全新的Android UI框架/
1.1Jetpack Compose是什么?/
1.1.1谷歌為什么要推出Compose?/
1.1.2命令式UI與聲明式UI/
1.1.3Compose API設(shè)計(jì)原則/
1.1.4Compose與View的關(guān)系/
1.1.5不只是Android UI框架/
1.2搭建開發(fā)環(huán)境/
1.2.1準(zhǔn)備所需要的開發(fā)工具/
1.2.2部署開發(fā)環(huán)境/
1.3創(chuàng)建第一個(gè)Compose應(yīng)用/
1.3.1創(chuàng)建新的Compose項(xiàng)目/
1.3.2保持Compose版本更新/
1.3.3在模擬器中運(yùn)行Compose應(yīng)用/
1.3.4分析第一個(gè)Compose應(yīng)用/
1.3.5對(duì)Compose應(yīng)用進(jìn)行預(yù)覽/
1.3.6已有項(xiàng)目引入Compose/
1.4本章小結(jié)/
第2章 了解常用UI組件/
2.1Modifier修飾符/
2.1.1常用修飾符/
2.1.2作用域限定Modifier修飾符/
2.1.3Modifier實(shí)現(xiàn)原理/
2.2常用的基礎(chǔ)組件/
2.2.1文字組件/
2.2.2圖片組件/
2.2.3按鈕組件/
2.2.4選擇器/
2.2.5對(duì)話框/
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內(nèi)容填充/
2.5本章小結(jié)/
第3章 定制UI視圖/
3.1構(gòu)建UI頁面/
3.1.1配置顏色、字體與形狀/
3.1.2Welcome歡迎頁/
3.1.3LoginIn登錄頁/
3.1.4Home主頁/
3.1.5布局預(yù)覽/
3.2主題/
3.2.1MaterialTheme介紹/
3.2.2理解MaterialTheme與
CompositionLocal/
3.2.3定制主題方案/
3.3本章小結(jié)/
第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)的持久化與恢復(fù)/
4.1.7使用ViewModel管理狀態(tài)/
4.1.8LiveData、RxJava、Flow轉(zhuǎn)State/
4.1.9狀態(tài)的分層管理/
4.2重組與自動(dòng)刷新/
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本章小結(jié)/
第5章 Compose組件渲染流程/
5.1組合/
5.2布局/
5.2.1Layout Modifier/
5.2.2LayoutComposable/
5.2.3固有特性測(cè)量Intrinsic/
5.2.4SubcomposeLayout/
5.3繪制/
5.3.1Canvas Composable/
5.3.2DrawModifier/
5.3.3使用平臺(tái)原生Canvas/
5.3.4實(shí)戰(zhàn):Canvas繪制波浪加載/
5.4本章小結(jié)/
第6章 讓頁面動(dòng)起來:動(dòng)畫/
6.1動(dòng)畫分類/
6.2高級(jí)別動(dòng)畫API/
6.2.1AnimatedVisibiliy/
6.2.2AnimatedContent/
6.2.3Crossfade/
6.2.4Modifier.animateContentSize/
6.3低級(jí)別動(dòng)畫API/
6.3.1animate*AsState/
6.3.2Animatable/
6.4Transition過渡動(dòng)畫/
6.4.1updateTransition/
6.4.2rememberInfiniteTransition/
6.5AnimationSpec動(dòng)畫規(guī)格/
6.5.1spring彈跳動(dòng)畫/
6.5.2tween補(bǔ)間動(dòng)畫/
6.5.3keyframes關(guān)鍵幀動(dòng)畫/
6.5.4repeatable循環(huán)動(dòng)畫/
6.5.5infiniteRepeatable無限循環(huán)動(dòng)畫/
6.5.6snap快閃動(dòng)畫/
6.5.7使用Easing控制動(dòng)畫節(jié)奏/
6.6AnimationVector動(dòng)畫矢量值/
6.6.1TwoWayConverter/
6.6.2自定義實(shí)現(xiàn)TwoWayConverter/
6.7實(shí)戰(zhàn):Compose實(shí)現(xiàn)骨架屏的動(dòng)畫
效果/
6.7.1定義背景色/
6.7.2為Brush添加動(dòng)畫/
6.7.3實(shí)現(xiàn)骨架屏布局/
6.8實(shí)戰(zhàn):Compose實(shí)現(xiàn)收藏按鈕動(dòng)畫
效果/
6.8.1實(shí)現(xiàn)方式1:高級(jí)別API
(AnimatedContent)/
6.8.2實(shí)現(xiàn)方式2:低級(jí)別API
(updateTransition)/
6.9本章小結(jié)/
第7章 增進(jìn)交互體驗(yàn):手勢(shì)處理/
7.1常用的手勢(shì)處理Modifier/
7.1.1Clickable點(diǎn)擊/
7.1.2CombinedClickable復(fù)合點(diǎn)擊/
7.1.3Draggable拖動(dòng)/
7.1.4Swipeable滑動(dòng)/
7.1.5Transformable多點(diǎn)觸控/
7.1.6Scrollable滾動(dòng)/
7.1.7NestedScroll嵌套滑動(dòng)/
7.2定制手勢(shì)處理/
7.2.1使用PointerInput Modifier/
7.2.2手勢(shì)事件方法作用域
awaitPointerEventScope/
7.3手勢(shì)結(jié)合動(dòng)畫/
7.4本章小結(jié)/
第8章 為Compose添加頁面導(dǎo)航/
8.1在Compose中使用Navigation/
8.1.1認(rèn)識(shí)Jetpack Navigation/
8.1.2Navigation for Compose/
8.1.3導(dǎo)航時(shí)攜帶參數(shù)/
8.1.4Navigation搭配底部導(dǎo)航欄/
8.1.5嵌套導(dǎo)航圖Nested Navigation
Graph/
8.1.6導(dǎo)航DeepLinks/
8.1.7Navigation對(duì)ViewModel的
支持/
8.2在Compose中使用Hilt/
8.2.1認(rèn)識(shí)Dagger Hilt/
8.2.2在Compose中使用Hilt/
8.3本章小結(jié)/
第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動(dòng)畫資源/
9.2.3創(chuàng)建Lottie動(dòng)畫/
9.3Coil/
9.3.1配置依賴/
9.3.2AsyncImage/
9.3.3SubcomposeAsyncImage/
9.3.4AsyncImagePainter/
9.4本章小結(jié)/
第10章 項(xiàng)目實(shí)戰(zhàn):小游戲Tetris/
10.1整體項(xiàng)目架構(gòu)/
10.2磚塊矩陣(BrickMatrix)/
10.2.1drawBrick繪制磚塊單元/
10.2.2drawMatrix繪制磚塊
矩陣/
10.3下落中的磚塊(Sprite)/
10.3.1Shape磚塊組合形狀/
10.3.2Sprite定義下落磚塊/
10.3.3drawSprite繪制下落磚塊/
10.4游戲機(jī)體(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預(yù)覽游戲畫面/
第11章 項(xiàng)目實(shí)戰(zhàn):聊天應(yīng)用Chatty/
11.1整體系統(tǒng)架構(gòu)/
11.2登錄注冊(cè)模塊/
11.3IM聊天模塊/
11.3.1對(duì)話列表頁/
11.3.2對(duì)話詳情頁/
11.4聯(lián)系人模塊/
11.4.1通訊錄頁/
11.4.2添加搜索頁/
11.4.3二維碼掃描頁/
11.4.4陌生人信息頁/
11.5用戶信息模塊/
11.5.1個(gè)人信息頁/
11.5.2信息編輯頁/
11.5.3聯(lián)系人信息頁/
11.6發(fā)現(xiàn)模塊/
11.7適配暗黑主題/

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)