Actionscript 3 储蓄及;负载状态为3+;土坯空气

Actionscript 3 储蓄及;负载状态为3+;土坯空气,actionscript-3,air,save,Actionscript 3,Air,Save,如何使用AdobeAIR保存和加载?这一直是我需要知道的。我以前问过这个问题,但我被告知要使用什么,而不是如何使用。假设我在第59帧中保存状态,我关闭并结束应用程序。然后当我点击load时,我如何让它返回到第59帧?请帮忙 1.始终将当前帧写入共享对象或文件 ex. onEnterFrame(ev:Event){ //write current frame somewhere } 2.应用程序启动时,首先检查文件或共享对象上一次保存的帧编号。如果默认未找到,则为第一帧,否则转到并播放(已保存

如何使用AdobeAIR保存和加载?这一直是我需要知道的。我以前问过这个问题,但我被告知要使用什么,而不是如何使用。假设我在第59帧中保存状态,我关闭并结束应用程序。然后当我点击load时,我如何让它返回到第59帧?请帮忙

1.始终将当前帧写入共享对象或文件

 ex. onEnterFrame(ev:Event){ //write current frame somewhere }
2.应用程序启动时,首先检查文件或共享对象上一次保存的帧编号。如果默认未找到,则为第一帧,否则转到并播放(已保存帧)


很抱歉,在这个论坛上没有人会为你编写应用程序。您必须更加努力才能完成解决方案。

假设您只有根时间线,并且不重复第一帧,那么在应用程序的第一帧上使用以下代码:

//the shared object to store the state
var stateSO:SharedObject = SharedObject.getLocal("saveState");

if (stateSO.size > 0 && stateSO.data.lastFrame && stateSO.data.lastFrame != undefined) {
    //the shared object exists and has a valid value, so lets skip to that frame
    gotoAndPlay(stateSO.data.lastFrame);
}

//this function runs every frame
function saveState(e:Event = null):void {       
    stateSO.data.lastFrame = this.currentFrame; //assign the current frame number to the shared object
    stateSO.flush(); //save the cookie (shared object)
}

addEventListener(Event.ENTER_FRAME, saveState);

此外,这是针对移动设备的。您可以使用SharedObjects在会话之间存储数据(如帧号)-请参阅您找到问题的解决方案了吗?如果是这样,请共享它,或者接受现有的答案。@user1666767:您是否查看了Lee Burrows的链接?是的,我知道如何使用SharedObjects,但如何保存和加载!它是如何检测哪一帧的呢!