Saturday, September 24, 2011

WWDC2011视频的学习笔记(19)

前两周时间我的苹果电脑更新了,在更新期间由于我的所有iTunes视频都没有恢复到我暂时工作的MBP手提电脑上(请看我之前的博客如何使用TM将单一用户恢复到不同电脑),因此无法继续写我关于WWDC2011视频的学习笔记。上个礼拜新电脑到了之后许多工作需要弥补上,因此学习笔记又耽搁至今。从今天起,我开始根据所恢复WWDC2011苹果的PDF视频讲稿,继续我的心得体会和要点笔记。

125 - UITableView Changes, Tips, Tricks


UITableView是苹果在手机上最早的用户界面(UI),也是最为常用的界面。现在许多其它竞争对象的移动设备也都模仿这一用户界面,提供一种单列表格的数据显示。这种UI的特点是,数据可以是无限长的单列表格,用户用手滑动来移动数据内容,并有基本编辑功能(如插入、删除、移动等),表格的每个单元(cell)的左边可以有图像和编辑标记(加号为加新cell,减号为删除),表格内容可以有标准的标题和详细说明,也可以自己设计内部内容,右边两种标准箭头,一种为表述有详细内容(箭头加圆圈),一种为转到子目录内容(仅箭头)。这些都是表格UI的最基本功能和结构设计。

我在最初学习和开发苹果软件过程中也常用这个View。本苹果视频介绍了这一用户界面的更新和一些使用技巧。

新的功能有:


  • 自动更新表格和单元的尺寸规格。这主要是通过新的API来设定表格内容的高度。
  • 新的动画风格。插入和删除行时的API增加了动画不同风格,比如从上或下的动画移动,给用户提供视觉上明显的增加或删除的效果。苹果在用户界面方面的设计十分注重给用户提示和动态的感觉,使用户感到所有的变化十分自然和合乎逻辑。如果没有这些动画的变化,加入和删除是非常快的瞬间变化,非常难察觉其变化。在新的Lion中就有许多动画的效果,我想这也是借鉴 iOS的成功经验。
  • 新的更新API,比如移动、插入、删除和重新显示Section,移动、插入、删除行等的新API接口。有实例演示。
  • 支持菜单。通过新的API提供菜单支持,比如可以提供拷贝的菜单,也可以提供特定菜单的行动支持。
  • 多项选择。这是通过新的Properites来支持多项选择的支持,同时提供新的API可得到多项选择行的地址,同时通过新的API让软件设计者提供不同的选择背景。演讲进一步解析了选择时不同层次的View是如何排列和显示的。
  • 自动表格内容的装入,过去单cell的装入过程要写许多编码来优化重复使用cell,新的改进编码更为简单。而且可以自动从IB设计的xib装入。
  • 静态表格。这种表格为简单用户的界面,内容不会变化,可以通过IB来设计,系统的许多设定都是静态表格。本讲座建议看Interface Builder Storyboarding有关部分。
小技巧

接着讲座介绍了一些与之有关的编程技巧,许多技巧也可以在之前版本的iOS中使用。

用UITableView作为Action Row,有演示实例:用户点一行之后可以动态显示一组图像作为投票选择,这样在表格内部就可以直接进行评分(好或不好)。

浮动的View,这种方式在许多软件中都有应用,比如A-Z的index View,还有标题固定位置等。UITableView的内容是一个很长的内容,在iPhone的屏幕中仅仅是显示其中的一个部分,演讲介绍了一种如何保证某些表格中的内容浮动总是在屏幕中的某一位置。在进行演示之前,还介绍了表格的背景View,这种背景可以是任何可以移动的动画,如移动的云彩。接着通过演示介绍了如何实现这两种效果。

127 - Design Patterns to Simplify Mac Accessibility


不知何故没有126,也许被删除。

本讲座为Lion中有身体残障人提供的支持。VoiceOver(OV)是苹果操作系统中为盲人提供的语音支持。Lion提供更为广泛的支持,各种窗口界面内部的内容可以通过VO提供更为详细的内容介绍。

Lion的技术是通过下面三个方面实现的:

  • 许多新的用户界面自动提供支持:比如Lion的文件版本(versions)新功能就提供了许多语音支持;词典自动单词纠正和单词查询;全屏幕;新的Sandbox提供存文件对话窗口;新的自动显示滑动棒;新的跳出窗口(Popovers);表格窗口等都有非常丰富的语音支持。
  • 新的操作平台使得软件编程可以得到许多VO支持API接口,Lion提供一种用户界面的Identifiers来提供鉴别用户界面,采用这一设置可以很容易提供Accessibility的支持:IB或程序编码。
  • 新的Accessibility 设置界面(Inspector),这是苹果重新设计推出为Accessiblity提供支持的设置界面,讲演有演示。
接着介绍如何遵循Design Patterns(DP)来进行软件的设计,通过这种设计模式可以大大简化苹果操作系统和软件中的Accessibity支持。

通过一系列用户界面介绍了如何采用DP来提供方便的语音支持。这些设计思想从逻辑上提出一系列方法,通过API提供详尽的Accessibility支持,比如演讲中就图像和其的动态变化如何提供语音支持进行了非常详尽的设计思路分析,如何通过苹果平台(frameworks)的简便API就可以提供功能十分丰富的VO支持。

苹果在这方面花了很大的精力为软件编程提供了非常简单但功能丰富的各种Accessiblity API接口和支持,在这一方面,苹果这种从操作系统和软件开发API提供的Accessiblity支持远远胜出许多其它的操作系统和软件的VO支持。

苹果一再强调,编写软件一定要充分利用这些接口,让软件提供Accessiblity的支持,让广大有身体残疾障碍的人也能使用苹果电脑和iOS移动设备。苹果多年这一在技术上提供充分支持的举动,得到许多身残人们的极大欢迎,也使得这一人群充分享受到高科技的便利,他们的参与给我们的网络社会也带来了无限生机。

No comments:

Post a Comment