欢迎光临!我有一个Flex4.5Mobile项目在滚动,我遇到了一个相当疯狂的障碍。我正在使用一个StageWebView对象来呈现网页,嵌入到我的其他spark布局中。我正在尝试向包含StageWebView的组件添加一个手势事件,但是由于StageWebView对象不属于Flex (它继承自EventDispatcher,而不是UIComponent),所以我的所有事件似乎都被吃掉了。任何基于鼠标的事件(点击、手势等)似乎都不会被注册,我也不确定如何绕过它。如果我使用未呈现浏览器的区域,则手势事件会起作用。如何从外部SkinnableContainer获取手势事件?
StageWebView参考:
http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/media/StageWebView.html
UIComponent封装的StageWebView:
http://soenkerohde.com/2010/11/air-mobile-stagewebview-uicomponent/
谢谢!
发布于 2011-06-01 03:34:22
我猜你可能需要自己连接手势事件,只是在UIComponent.as中快速挖掘一下,它有以下几个:
[Event(name="touchInteractionStarting", type="mx.events.TouchInteractionEvent")]
[Event(name="touchInteractionStart", type="mx.events.TouchInteractionEvent")]
[Event(name="touchInteractionEnd", type="mx.events.TouchInteractionEvent")]发布于 2012-02-17 21:37:29
这不是一个bug,据我所知,在stagewebview上的任何鼠标交互都意味着与当前加载的html的交互。您应该捕获那里的事件,并将其触发回swf。
当然,有一些jquery插件或其他工具可以帮助实现这一点。然而,你不能将内容覆盖在它们上面,这有点令人沮丧。
https://stackoverflow.com/questions/6192165
复制相似问题