正如你说的,我现在很享受近期在Flash Player 10.1和AIR 2.0中新的多点触摸和手势API。基于我的视频和实例,有一对的问题产生,其中也有很多连我都不知道答案的。还有很多需要测试的,当我们本周在巴西晒太阳时我希望拥有Danny Dura的头脑。Danny在这些API上做了很多工作,在接下来的巴西的Flash Camp上做一个演讲。下面是一些大家常问的问题。
Flash Player能响应多少个触摸点?
对于触摸点的数量没有限制,仅仅受限于你的设备能够支持多少触摸点。HP TouchSmart有最多2个触摸点的限制,iPhone有5个触摸点的限制。所有的都依赖于你的触摸设备支持的数量。
手势操作是很好,但是原始触摸数据怎么办?
实例我会演示我们提供的内建手势。这在大部分的应用中是很好的。但是还有一些原始的多点触摸API允许你跟踪原始点数据。
我能否创建自定义的手势?
你当然可以。你需要监听原始触摸的时间,而不是高级手势。你可以跟踪这些原始数据,知道你决定自定义手势要发生然后出发你自己的事件。
是不是每个设备都支持Flash Player 10.1中的所有手势?
不是。这又是要由你所使用的设备来控制。我们提供了一个API,让你在运行时检测哪些在设备上是被支持的,你可以做些别的事情。Christian Cantrell在开发者中心有一篇非常好的文章,里面列举了哪些设备支持些什么。这篇文章也有一些非常好的代码段。
多点触摸在浏览器中也支持吗?
所有的多点触摸和手势API在Windows的浏览器中得到支持,但是不支持Mac下的浏览器。我暂时还不确定Linux上是否支持,但是我会继续尝试找到答案。
它们为什么在Mac的浏览器上不工作?
当然我也期望这样。Flash Player的工程师Jakub Plichta负责多点触摸的,告诉了我如下具体的消息,关于我们需要得到Apple一些什么支持来达成这一点。Firefox和Safari使用相同的插件接口API。我们需要苹果做的是将手势和原始触摸数据添加到在webkit框架中,定义在npapi.h的NPCocoaEvent类中。在这之前我们什么也做不了。非常感谢Jakub给了我们如此详细的说明。
WebKit是开源的,等着吧。这些你不能自己做吗?
不确实不想一个人离开的对吗?WebKit是开源的,但是Safari和Firefox的插件接口是由苹果写的。
在Adobe AIR 2.0应用中,多点触摸可以在HTML组件中工作吗?
在这个案例中,我们在WebKit实现中进行控制,但是由于时间限制,我们没有在即将发行的AIR 2.0中加入这个特点。但是我不认为这基于Flash的AIR内容中运行它会有什么问题。
这些可以在iPhone中运行的API能够在Flash CS5中发布吗?
我假设你看过我上一篇的发布视频,但是在这个案例中,我想我已经给出了答案。使得,他们当然可以在iPhone上运行。
我有Windows8但是没有触摸显示器。我可以使用Wacom Bamboo来做多点触摸吗?
非常不幸。Wacom有它自己的驱动,并不能获得本地的手势。如果你买了一个,我希望你保留好你的发票。一般的规则是:如果设备获得原始数据,本地多点触摸事件就能在Flash中运行。 |