我有这个应用程序:http://www.jungle-g.co.il/#/System/
目前,当用户选择产品(例如衬衫)时,他只能制作衬衫的一面。 当用户想要编辑衬衫的另一面时,他必须完成第一面的预订,然后邀请另一面。
我的问题是我找不到如何将第一张图像保存在flash存储器或movieclipe中。 我的采访是为每个边用户编辑一个动画片段,只有当用户决定进行实际预订时才会发送动画片段中的所有图片。 这可能吗?如果没有另外的方法吗?
我对该主题进行了研究,发现没有可以使用它的解决方案。 我找到了这个网站:http://code.google.com/p/swfupload/ 但在我的情况下,我不明白它对我的帮助。
感谢所有帮助者,我在案件上打了一个多月。
答案 0 :(得分:0)
您可以创建一个类来保存bitmapData的静态。
package {
public class ShirtState
{
public static var ShirtFront:BitmapData;
public static var ShirtBack:BitmapData;
}
}
假设你有一件正在编辑的衬衫。
var shirtFront:MovieClip; //this is the shirt you are working with.
完成后
var shirtFrontBitmap:Bitmap = new Bitmap(shirtFront.width, shirtFront.height);
shirtFrontBitmap.draw(shirtFront);
一旦有了位图,就可以将其保存到静态类
ShirtState.shirtFront = shirtFrontBitmap.bitmapData;
您可以随时在应用中访问它,只要您不重新加载它。
有一些警告:
如果您有一个模块应用程序,其中各个swfs由DOM加载和卸载,那么您可能希望使用LocalSharedObject来存储您的图像。要做到这一点,你必须将位图数据转换为Base64(我会反正),然后将taht字符串存储在本地共享对象中。请注意,对象具有最大文件大小(不确定它是什么)。
您不一定要存储衬衫边的位图。你可以创建你的应用程序来为衬衫创建一个Class,只要它的实例存在,你就可以访问衬衫的两面。
我不确定你是如何构建这个应用程序的,但是如果一切都在同一个上下文中,你甚至不需要使用静态。实际的服务电话是将衬衫的两面送到服务器进行处理,将在绝对结束时进行。