深入理解Windows Phone 8.1 UI控件编程
作 者: 林政 著
出版时间: 2014
内容简介
《清华开发者书库·深入理解Windows Phone 8.1 UI控件编程》深入地论述了Windows Phone8.1的UI控件编程的相关技术知识。本书核心是引导读者掌握解决问题的思路,在介绍原理的同时,给出了大量应用实例来帮助理解和实践。本书从程序界面开始,解剖了XAML页面的生成原理及其运行原理,然后对UI编程常用的知识样式、模板、布局原理进行讲解。布局原理并不是讲解简单的控件布局,而是重点分析布局面板的工作原理以及如何去自定义实现自己的布局规则。书中介绍了与动画图形编程相关的诸多知识,包括图形绘图、图表编程、变换效果、三维效果、动画编程等。在动画编程里,分析了WindowsPhone8.1的所有动画解决方案,并介绍了如何选择最优的实现方案及如何编写复杂的动画效果。在掌握UI控件编程的原理的基础上,本书还介绍了Expression Blend工具的使用,尤其是如何借助这个工具去高效地实现绘图和制作动画。最后,本书介绍了控件和列表编程的相关知识,包括解剖系统空间原理、自定义控件、高效的列表的解决方案和Toolkit相关控件技术原理的研究等内容。《清华开发者书库·深入理解Windows Phone 8.1 UI控件编程》配套提供了书中实例源代码,最大限度满足读者高效学习和快速动手实践的需要。《清华开发者书库·深入理解Windows Phone 8.1 UI控件编程》内容针对性强、讲解深入、实例丰富,注重理论学习与实践开发的配合,非常适合想要在Windows Phone领域上进行更加深入学习的读者。
目录
第1章程序界面 1.1XAML的原理 1.2XAML的树结构 1.3路由事件 1.4框架和页面 1.5UI线程
第2章样式和模板 2.1样式 2.2模板
第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.2Path图形 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.1SolidColorBrush画刷 4.3.2LinearGradientBrush画刷 4.3.3ImageBrush画刷 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.4QuickCharts图表控件库 5.4.1QuickCharts项目结构分析 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.3DoubleAnimation实现变换动画 7.2.4ColorAnimation实现颜色渐变动画 7.2.5PointAnimation实现Path图形动画 7.3关键帧动画 7.3.1关键帧动画概述 7.3.2线性关键帧 7.3.3样条关键帧 7.3.4离散关键帧 7.4缓动函数动画 7.4.1缓动函数动画概述 7.4.2BackEase动画 7.4.3BounceEase动画 7.4.4CircleEase动画 7.4.5CubicEase动画 7.4.6ElasticEase动画 7.4.7ExponentialEase动画 7.4.8PowerEase/QuadraticEase/QuarticEase/QuinticEase动画 7.4.9SineEase动画 7.5基于帧动画 7.5.1基于帧动画的原理 7.5.2基于帧动画的应用场景 7.5.3基于帧动画的实现
第8章动画进阶 8.1动画方案的选择 8.1.1帧速率 8.1.2UI线程和构图线程 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.2UserControl自定义控件——水印输入框控件 9.3从控件基类派生实现自定义控件——全屏进度条控件
第10章Expression Blend工具 10.1Expression Blend概述 10.2主要的面板 10.3Expression Blend for Windows Phone的特色功能 10.4Expression Blend绘图 10.5Expression Blend制作动画
第11章列表 11.1列表控件的使用 11.2虚拟化技术
第12章Toolkit控件库 12.1Toolkit控件库项目简介 12.2CustomMessageBox控件原理解析 12.3PhoneTextBox控件原理解析 12.4ToggleSwitch控件原理解析 12.5ListPicker控件原理解析 12.6WrapPanel控件原理解析