2011-11-20 66 views
1

这不仅仅是我的好奇心,最近我收到了关于我的一个AS3应用程序的错误报告。只有Flash播放器的质量设置为低(高/中 - 一切正常),才能复制此错误。该错误改变了应用程序的行为,但对我来说这是一个谜,为什么它只发生在低质量,而质量被认为影响渲染和视觉外观,而不是代码或行为。Flash Player“低质量”设置是否仅针对反走样?

简而言之,我有一个菜单面板(MovieClip)与几个项目(也影片剪辑)。非常简单,它出现在MouseEvent和用户将光标从一个元素向下移动到另一个元素之后的屏幕上。当光标到达第二项的边缘时,菜单突然消失。 在我的代码面板隐藏设置为鼠标点击或鼠标移出。

我个人认为,问题出在Tweener上,我不得不使用那段旧的代码。当鼠标在用户图标上方时显示菜单面板,同时在Tweener的帮助下,我对该图标产生一些简单的效果。

我已经探索过adobe和firefox(我的应用程序是针对网络浏览器的,并且该漏洞报告用于firefox)bugTracker,但到目前为止我什么也没找到。也许阵列中闪光灯播放器11的不当行为已经修复......我已经用完了想法。

+0

这听起来像你有一个想法,问题在哪里。也许你只需要创建一个简单的测试用例,将其复制到项目的其余部分之外。 – JeremyFromEarth

回答

0

从文档:

LOW 
Specifies low rendering quality: graphics are not anti-aliased, and bitmaps are not smoothed. 

如果只有当渲染其设置为较低的情况,那么它可能是一个时机的问题 - 即错误一直存在,但因为你结束了渲染以前,你可以触发bug。臭虫记者的电脑是缓慢的吗?一次有很多事情发生吗?菜单是否被删除,设置为不可见或重新定位?

就像@jeremyne​​albrown说的那样,试着把你的课程分成一个简单的项目,以确保你的逻辑没有错。

另一种方法,覆盖removeChild()方法,并visiblexy性能,看看哪一个是设置它,然后把跟踪调用这些,看看有什么触发这一切之前调用。

如果您认为问题存在于Tweener中,则无论菜单面板的状态如何,都可以在菜单面板中添加一个MOUSE_OVER监听器,该监听器调用诸如removeAllTweens()之类的内容。如果错误不再发生,这会告诉你它与补间引擎有关。