应用程序发明者2使用TinyDB存储值

时间:2016-04-28 10:25:18

标签: android app-inventor

我正在使用 App Inventor 2 创建一个Android应用,我想创建一个可以使用TinyDB存储玩家标记的Q& A游戏。

我有4个屏幕
- 主屏幕
- Q& A屏幕 - 游戏结束 - 玩家姓名输入
- 排行榜

在玩家输掉游戏后,游戏将显示他们的标记,并要求玩家输入他们的名字。然后,玩家的名字将存储在TinyDB中。当玩家开始新游戏(没有关闭应用程序)时,再次,如果他输了游戏,他需要输入他的名字,然后他的标记和名字将存储在TinyDB中。现在应该有两个存储在TinyDB中的记录。当玩家进入排行榜时,他应该能够看到他的标记和名字(现在共有两个记录)。

我创建了一个TinyDB,但不知何故,旧记录将被新记录替换。它无法存储两条记录。

以下是我的播放器输入代码

enter image description here

排行榜的代码

enter image description here

排行榜中的编辑代码

enter image description here

1 个答案:

答案 0 :(得分:0)

Leaderboard.Initialize事件中,您应该使用TinyDB块从TinyDB.GetValue读取结果,并将其分配给全局变量marksList

startvalue事件中的Leaderboard.Initialize只是您在过程procedure中稍后要添加到marksList的子列表,而不是完整列表本身。顺便说一句。您可能希望将procedure重命名为insertMarks ...

也许一个好主意是学习如何使用列表和列表列表......见这里