"保存此堆栈"没有在livecode中工作

时间:2018-01-01 18:49:27

标签: mobile stack save livecode

一旦我可以使用&#34保存应用程序中的现有状态;保存此堆栈"命令,无论是在计算机上还是在移动设备上。

今天我发现它已经不再适用了 例如:有一个增加1的字段,我达到10。

如果我离开应用并重新打开它,它就不会被保存,而是从0开始。

为什么呢?如何解决这个问题?

代码:



on mouseDown
add 1 to field "counter"
save this stack
end mouseDown




5 个答案:

答案 0 :(得分:0)

使用字段和按钮创建一个新堆栈,并将其放在按钮脚本中:

 on mouseUp
  add 1 to fld 1
  save this stack
end mouseUp

如果单击该按钮,该字段将递增。如果然后关闭堆栈,它将立即关闭,而不是询问您是否要保存它。如果您再重新打开,则会显示该字段的最后一个状态。

您没有被要求保存的原因是因为堆栈刚刚保存,并且没有进行任何更改。该字段包含最新值。换句话说,一切都与世界是对的。那么问题就变成了:你的筹码有什么不同?

Mac os 10.9。 LC 8.1.8。 (但这些都不重要)

答案 1 :(得分:0)

这正是我所做的但是没有保存!我按下并按下然后我到了10.然后我关闭了应用程序并重新打开它。字段显示第一个值(为此目的为0)而不是值10 *不在移动设备上

答案 2 :(得分:0)

桌面:我在我的IDE上尝试过它可以正常工作!但是,只有当您使用的是实时代码堆栈而不是独立时,请参阅下一节。

移动:您无法在移动设备上保存主堆栈中的更改,因为它始终是独立的。不能使用独立的主堆栈,因为它们是二进制文件的一部分。如果你想在移动设备(或桌面)上拥有可以自行保存的堆栈,你必须将其创建为一个子包。

答案 3 :(得分:0)

为了正确,一个子包,如果也是可执行文件的一部分,则无法保存。

通常的方法是将一个或多个堆栈文件附加到" Splash"叠加。

Splash堆栈通常具有有限的功能,例如导航到工作堆栈或堆栈及其所有子堆栈。这些都可以保存。启动堆栈只是打开独立堆栈的工具,然后让其关联的堆栈完成实际工作。

答案 4 :(得分:0)

使用

command saveThisStack
   put fld "score" of cd "mainCard" into tTempList
   put the base64Encode of tTempList into tTempList
   set the defaultFolder to specialFolderPath("documents")
   put  tTempList into URL ("file:score.txt")
end saveThisStack