我想在Flash游戏中的4个不同位置使用FileReference.save()。所有4种方法都相同(复制和粘贴)。在本地,所有4个工作都很完美但是当我把swf放在浏览器中时,facebook实际上只有其中一个按预期工作而其他人没有。在Chrome中,所有3个都没有用过。在Safari中,它们有时会工作但不确定。可能是什么原因?有什么想法吗?
顺便说一下,我使用Air 2.5和Air 3.2 Desktop编译,我使用的是Flash CS6
private function onScreenShotButtonClicked(e:MouseEvent)
{
mScreenShotButton.removeEventListener(MouseEvent.CLICK, onScreenShotButtonClicked);
var finalBitmapData:BitmapData = new BitmapData(810, 520, true, 0x00000000);
var finalBitmap:Bitmap = new Bitmap(finalBitmapData, PixelSnapping.ALWAYS, false);
finalBitmapData.draw(mParent.root);
var finalData:ByteArray = new ByteArray();
finalData = PNGSave.encode(finalBitmapData);
var tempFileReference:FileReference = new FileReference();
tempFileReference.addEventListener(Event.COMPLETE, onSaveCompleted);
tempFileReference.addEventListener(Event.CANCEL, onSaveCancelled);
tempFileReference.save(finalData, "boombox.png");
}
答案 0 :(得分:0)
常见问题是您的方法没有MouseEvent实例参数。可能是你调用Filereference.save()但你没有函数中的事件参数。