繼兩年前發(fā)布《輕松搞定extjs》之后,本人的第二個(gè)作品。
下載地址:http://download.csdn.net/detail/lifenote/9445898
封面 1
序 2
捐助說明 5
目 錄 7
第一章 View的繪圖流程 12
1.1、概述 12
1.2、Activity的組成結(jié)構(gòu) 13
1.3、View樹的繪圖流程 15
1.3.1 測(cè)量組件大小 16
1.3.2 確定子組件的位置 17
1.3.3 繪制組件 18
1.4、說點(diǎn)別的 22
1.5 練習(xí)作業(yè) 22
第二章 Graphics2D API 23
2.1、概述 23
2.2、Point類和PointF類 23
2.3、Rect類和RectF類 25
2.4、Bitmap類和BitmapDrawable類 32
2.5、Canvas類與Paint類 34
2.5.1 繪圖概述 34
2.5.2 Paint類 34
2.5.3 Canvas類 39
2.6 練習(xí)作業(yè) 63
第三章 使用Graphics2D實(shí)現(xiàn)動(dòng)態(tài)效果 64
3.1 概述 64
3.2 invalidate()方法 65
3.3 坐標(biāo)轉(zhuǎn)換 69
3.4 剪切區(qū)(Clip) 73
3.5 案例:指針走動(dòng)的手表 82
3.6 練習(xí)作業(yè) 88
第四章 雙緩存技術(shù) 89
4.1 雙緩存 89
4.2 在屏幕上繪制曲線 90
4.3 在屏幕上繪制矩形 99
4.4 案例:繪圖App 104
4.4.1 繪圖屬性 106
4.4.2 軟件參數(shù) 108
4.4.3 繪圖緩沖區(qū) 109
4.4.4 撤消操作 111
4.4.5 圖形繪制 113
4.4.6 繪圖區(qū) 118
4.4.7 主界面 119
4.5 練習(xí)作業(yè) 122
第五章 陰影、漸變和位圖運(yùn)算 123
5.1 概述 123
5.2 陰影 123
5.3 漸變 125
5.3.1 線性漸變(LinearGradient) 126
5.3.2 徑向漸變(RadialGradient) 130
5.3.3 掃描漸變(SweepGradient) 135
5.3.4 位圖漸變(BitmapShader) 138
5.3.5 混合漸變(ComposeShader) 140
5.3.6 漸變與Matrix 142
5.4 位圖運(yùn)算 143
5.4.1 PorterDuffXfermode 143
5.4.2 圖層(Layer) 146
5.4.3 位圖運(yùn)算技巧 148
5.5 案例1:圓形頭像 152
5.6 案例2:刮刮樂 156
5.7 練習(xí)作業(yè) 161
第六章 自定義組件 163
6.1 概述 163
6.2 自定義組件的基本結(jié)構(gòu) 164
6.3 重寫onMeasure方法 166
6.4 組件屬性 175
6.4.1 屬性的基本定義 175
6.4.2 讀取來自style和theme中的屬性 181
6.5 案例1:圓形ImageView組件 186
6.6 案例2:驗(yàn)證碼組件CodeView 190
6.7 練習(xí)作業(yè) 202
第七章 自定義容器 204
7.1 概述 204
7.2 ViewGroup類 205
7.2.1 ViewGroup常用方法 205
7.2.2 ViewGroup的工作原理 208
7.2.3 重寫onLayout()方法 213
7.3 CornerLayout布局 217
7.3.1 基本實(shí)現(xiàn) 217
7.3.2 內(nèi)邊距padding 224
7.3.3 外邊距margin 228
7.3.4 自定義LayoutParams 238
7.4 案例:流式布局(FlowLayout) 246
7.5 練習(xí)作業(yè) 256
第八章 Scroller與平滑滾動(dòng) 257
8.1 概述 257
8.2 認(rèn)識(shí)scrollTo()和scrollBy()方法 258
8.3 Scroller類 264
8.4 平滑滾動(dòng)的工作原理 271
8.5 案例:觸摸滑屏 272
8.5.1 觸摸滑屏的技術(shù)分析 272
8.5.2 速度跟蹤器VelocityTracker 273
8.5.3 觸摸滑屏的分步實(shí)現(xiàn) 274
8.6 練習(xí)作業(yè) 285
第九章 側(cè)邊欄 287
9.1 概述 287
9.2 使用二進(jìn)制保存標(biāo)識(shí)數(shù)據(jù) 289
9.2.1 位運(yùn)算符 289
9.2.2 位運(yùn)算的常用功能 292
9.3 繼承自ViewGroup的側(cè)邊欄 293
9.4 繼承自HorizontalScrollView的側(cè)邊欄 304
9.5 練習(xí)作業(yè) 312
第十章 加強(qiáng)版ListView 313
10.1 概述 313
10.2 ListView的基本使用 314
10.3 ListItem隨手指左右滑動(dòng) 318
10.4 向右滑動(dòng)刪除ListItem 326
10.5 滑動(dòng)ListItem出現(xiàn)刪除按鈕 336
10.5.1 列表項(xiàng)專用容器ExtendLayout 337
10.5.2 列表項(xiàng)能滑出刪除按鈕的ListView 342
10.5.3 定義布局文件 350
10.5.4 顯示ListView 351
10.6練習(xí)作業(yè) 353
案例代碼說明 354