《深刻理解Windows Phone 8.1 UI控件編程》本書基於最新的Windows Phone 8.1 Runtime SDK編寫,全面深刻地論述了最酷的UI編程技術:實現複雜炫酷的動畫、掌握佈局原理、列表虛擬化原理、高性能列表實現、圖表編程、控件原理等。html
全書源代碼免費下載:編程
http://vdisk.weibo.com/s/zt_pyrfNHoezI微信
試讀章節會在博客園持續更新:網絡
[WP8.1UI控件編程]Windows Phone XAML頁面的編譯框架
[WP8.1UI控件編程]Windows Phone自定義佈局規則異步
[WP8.1UI控件編程]Windows Phone理解和運用ItemTemplate、ContentTemplate和DataTemplate 函數
[WP8.1UI控件編程]Windows Phone動畫方案的選擇工具
[WP8.1UI控件編程]SemanticZoom控件實現分組列表佈局
[WP8.1UI控件編程]Windows Phone VirtualizingStackPanel、ItemsStackPanel和ItemsWrapGrid虛擬化排列布局控件性能
[WP8.1UI控件編程]Windows Phone大數據量網絡圖片列表的異步加載和內存優化
目錄以下:
《深刻理解Windows Phone 8 .1 UI控件編程》目錄
第1章 深刻解析程序界面
1.1 XAML的原理
1.1.1 XAML的概念
1.1.2 XAML頁面的編譯
1.1.3 動態加載XAML
1.2 XAML的樹結構
1.2.1 可視化樹
1.2.2 VisualTreeHelper類
1.2.3 遍歷可視化樹
1.2.4 可視化樹應用示例:實現ListBox控件分頁加載
1.3 路由事件
1.3.1 Windows Phone事件
1.3.2 路由事件的概念
1.3.4 路由事件原理
1.3.5 路由事件的做用和演示
1.4框架和頁面
1.4.1 框架頁面結構
1.4.2 頁面導航
1.4.3 框架的應用示例:自定義彈出窗口
1.5 UI線程
第2章 樣式和模板
2.1 樣式
2.1.1 建立樣式
2.1.2 樣式繼承
2.1.3 以編程方式設置樣式
2.1.4 樣式文件
2.1.5 系統主題
2.1.6 主題資源
2.1.7 自定義主題
2.2 模板
2.2.1 控件模板(ControlTemplate)
2.2.2 ContentControl和ContentPresenter
2.2.3 視覺狀態管理(VisualStatesManager)
2.2.4 數據模板(DataTemplate)
2.2.5 ItemTemplate、ContentTemplate和DataTemplate
2.2.6 數據模板的使用
2.2.7 讀取和更換數據模板
第3章 佈局原理
3.1 佈局原理
3.1.1 佈局的意義
3.1.2 系統的佈局面板
3.1.3 佈局系統
3.1.4 佈局系統的重要方法和屬性
3.1.5 測量和排列的過程
3.1.6 多分辨率的適配佈局
3.2 自定義佈局規則
3.2.1 建立佈局類
3.2.2 實現測量過程
3.2.3 實現排列過程
3.2.4 應用佈局規則
第4章 圖形繪圖
4.1 圖形原理
4.1.1 圖形中經常使用的結構
4.1.2 畫圖相關的類
4.1.3 基礎的圖形形狀
4.2 Path圖形
4.2.1 兩種Path圖形的建立方法
4.2.2 使用簡單的幾何圖形來建立Path
4.2.3 使用PathGeometry來建立Path
4.2.4 使用路徑標記語法建立Path
4.2.5 使用Path實現自定義圖形
4.2.6 利用Expression Blend工具建立Path圖形
4.3 畫刷
4.3.1 SolidColorBrush畫刷
4.3.2 LinearGradientBrush畫刷
4.3.3 ImageBrush畫刷
4.4 圖形裁剪
4.4.1 使用幾何圖形進行剪裁
4.4.2 對佈局區域進行剪裁
第5章 圖表編程
5.1動態生成折線圖和區域圖
5.1.1折線圖和區域圖原理
5.1.2 生成圖形邏輯封裝
5.2 實現餅圖控件
5.2.1 自定義餅圖片形形狀
5.2.2 封裝餅圖控件
5.3 線性報表
5.3.1 實現圖形表格和座標軸
5.3.2 定義線性數據圖形類
5.3.3 實現圖例
5.3.4 實現線性報表
5.4 QuickCharts圖表控件庫解析
5.4.1 QuickCharts項目結構分析
5.4.2 餅圖圖表PieChart的實現邏輯
5.4.3 連續圖形圖表SerialChart的實現邏輯
第6章 變換特效和三維特效
6.1 變換特效
6.1.1 變換的原理二維變換矩陣
6.1.2 平移變換TranslateTransform
6.1.3 旋轉變換RotateTransform
6.1.4 縮放變換ScaleTransform
6.1.5 扭曲變換SkewTransform
6.1.6 組合變換TransformGroup
6.1.7 矩陣變換MatrixTransform
6.2 三維特效
6.2.1 三維座標體系
6.2.2 三維旋轉
6.2.3 三維平移
6.2.4 用矩陣實現三維特效
第7章 動畫編程基礎
7.1 動畫原理
7.1.1 理解動畫
7.1.2 動畫的目標屬性
7.1.3 動畫的類型
7.2 線性插值動畫
7.2.1 動畫的基本語法
7.2.2 線性動畫的基本語法
7.2.3 DoubleAnimation實現變換動畫
7.2.4 ColorAnimation實現顏色漸變更畫
7.2.5 PointAnimation實現Path圖形動畫
7.3 關鍵幀動畫
7.3.1 關鍵幀動畫概述
7.3.2 線性關鍵幀
7.3.3 樣條關鍵幀
7.3.4 離散關鍵幀
7.4 緩動函數動畫
7.4.1 緩動函數動畫概述
7 .4.2 BackEase動畫
7.4.3 BounceEase動畫
7.4.4 CircleEase動畫
7.4.5 CubicEase動畫
7.4.6 ElasticEase動畫
7.4.7 ExponentialEase動畫
7.4.8 PowerEase/QuadraticEase/QuarticEase/QuinticEase動畫
7.4.9 SineEase動畫
7.5 基於幀動畫
7.5.1 基於幀動畫的原理
7.5.2 基於幀動畫的應用場景
7.5.3 基於幀動畫的實現
第8章 動畫進階演練
8.1 動畫方案的選擇
8.1.1 幀速率
8.1.2 UI線程和構圖線程
8.1.3 選擇最優的動畫方案
8.2 列表動畫
8.2.1 實現的思路
8.2.2 使用附加屬性控制動畫對象
8.2.3 列表切換緩動動畫實現
8.2.4 退出頁面的三維動畫實現
8.2.5 列表動畫的演示
8.3 模擬實現微信的彩蛋動畫
8.3.1 實現的思路
8.3.2 星星建立工廠
8.3.3 實現單個星星的動畫軌跡
8.3.4 封裝批量星星飄落的邏輯
8.3.5 星星飄落動畫演示
8.4 決鬥遊戲動畫
8.4.1 實現的思路
8.4.2 初始頁面的佈局
8.4.3 人物走路動畫
8.4.4 決鬥開槍動畫
第9章 深刻解析控件編程
9.1 系統控件原理解析
9.1.1 系統控件分類
9.1.2 系統控件的默認樣式
9.1.3 深度改造系統控件
9.2 UserControl自定義控件——水印輸入框控件
9.2.1 UserControl自定義控件的原理
9.2.2 建立水印輸入框控件
9.2.3 添加水印輸入框控件屬性和事件的處理
9.2.4 使用水印輸入框控件
9.3 從控件基類派生實現自定義控件——全屏進度條控件
9.3.1 建立控件樣式
9.3.2 加載樣式
9.3.3 全屏進度條的打開和關閉
9.3.4 處理物理返回事件
9.3.5 全屏進度條控件的使用
第10章 Expression Blend工具的使用
10.1 Expression Blend概述
10.1.1 視圖
10.1.2 工做區
10.2 主要的面板
10.2.1美工板
10.2.2 資產面板
10.2.3 工具面板
10.2.4 對象和時間線面板
10.2.5 屬性面板
10.3 Expression Blend for Windows Phone的特點功能
10.3.1 選擇設備的效果
10.3.2 預覽 Windows Phone 樣式
10.3.3 定義應用程序菜單欄
10.4 Expression Blend繪圖
10.4.1 繪圖基礎
10.4.2 使用「筆」繪製路徑
10.4.3 合併路徑
10.4.4 實例演練——繪製一個表情圖形
10.5 Expression Blend製做動畫
10.5.1 情節提要
10.5.2 時間線
10.5.3 Expression Blend的關鍵幀
10.5.4 實例演練——製做小球掉落反彈動畫
第11章 列表編程
11.1 列表控件的使用
11.1.1 ItemsControl實現最簡潔的列表
11.1.2 ListBox實現下拉點擊刷新列表
11.1.3 ListView實現下拉自動刷新列表
11.1.4 GridView實現網格列表
11.1.5 SemanticZoom實現分組列表
11.2 虛擬化技術
11.2.1 列表的虛擬化
11.2.2 VirtualizingStackPanel、ItemsStackPanel和ItemsWrapGrid虛擬化排列布局控件
11.2.3 實現橫向虛擬化佈局
11.2.4 大數據量網絡圖片列表的異步加載和內存優化
第12章 Toolkit控件庫的技術原理分析
12.1 Toolkit控件庫項目簡介
12.2 CustomMessageBox控件原理解析
12.2.1 CustomMessageBox的調用邏輯
12.2.2 CustomMessageBox的樣式和弱引用的使用
12.3 PhoneTextBox控件原理解析
12.3.1 PhoneTextBox的調用邏輯
12.3.2 PhoneTextBox的封裝邏輯
12.4 ToggleSwitch控件原理解析
12.4.1 ToggleSwitch的調用邏輯
12.4.2 ToggleSwitch和ToggleSwitchButton的樣式
12.4.3 ToggleSwitch對拖拽手勢的判斷
12.5 ListPicker控件原理解析
12.5.1 ListPicker的調用邏輯
12.5.2 ListPicker控件主要邏輯的分析
12.6 WrapPanel控件原理解析
12.6.1 WrapPanel控件的調用邏輯
12.6.2 WrapPanel佈局控件的測量排列邏輯