我认为 swiffy 的运行时最近更新了,使我的拖放动画在 iPad 中停止工作。
我的应用程序(在 Flash 中)的代码基本上使用 MOUSE_DOWN 处理程序来启动动画,然后屏幕上的对象跟随 mouse.x 和 mouse.y,并停止跟随 MOUSE_UP 处理程序。我会尝试包含一些相关的代码来给出这个想法。
var movetimer:Timer = new Timer(20, 0); // movement timer
movetimer.addEventListener(TimerEvent.TIMER, onmovetimer);
function onmovetimer(evt:TimerEvent):void {
if (isDragged !== null) {
//trace('following mouse, '+isDragged.x+' and '+isDragged.y);
isDragged.x = mouseX - xAdj;
isDragged.y = mouseY - yAdj;
} else {
movetimer.stop();
//trace('timer stopped');
}
}
function dragHandler(event:MouseEvent):void {
isDragged = event.target as MovieClip;
xAdj = mouseX - isDragged.x;
yAdj = mouseY - isDragged.y;
movetimer.start();
}
上周之前,这已转换为 swiffy,并且在 iPad 和 Android 平板电脑上运行良好。
然后,上周,我在 iPad 上进行了测试,发现它不再在那里工作(仍然在 Android 中工作)。
我的理论是,最近对运行时的更新,从 6.0.1 到 6.0.2 的更新或从 6.0.0 到 6.0.1 的更新,停止了对使 MOUSE_DOWN 和 MOUSE_UP 在转换时以这种方式工作的任何功能的支持。当然,我无法弄清楚到底发生了什么——就我而言,swiffy 代码是一个黑匣子,而且我在平板电脑上没有一个好的测试程序。我所能说的是,在 iPad 上拖动时什么都没有发生,而在 Android 上拖动时,事情继续发生。
所以我需要以下内容......要么是 swiffy 运行时的存档版本,要么是另一种方法。
我一直在考虑在我的代码中使用 touchstart 和 touchend。但是,当我在 Flash 中编译它时它不起作用(Flash 无法识别该代码并且不会编译)。
我尝试安装 swiffy 扩展,但它似乎不适用于 Flash CC,或者至少 Adobe Extension Manager 拒绝识别它。
我似乎找不到任何存档 swiffy 运行时的地方,或者就此而言,没有组织的方式来联系谷歌以获取该应用程序(我已经对此进行了反馈,但他们在表格上说他们不会单独回复...)
有任何想法吗?谢谢!