我想在flash游戏的4个不同的地方使用filerreference .save()。所有4个方法都是相同的(copy &粘贴)。在本地,所有4工作完美,然而,当我把swf在浏览器,facebook实际上,只有其中一个工作如预期和其他没有。在Chrome中,这三个功能都无法正常工作。在Safari中,它们有时可以工作,但不确定。原因是什么呢?任何想法?
顺便说一下,我用Air 2.5和Air 3.2桌面编译,我使用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");
}
常见的问题是你的方法没有MouseEvent实例参数。你可以打电话给filerreference。保存(),但在函数中没有事件参数。