【问题标题】:How to build a TinyDB with values from CheckBox and TextBox in App Inventor2?如何使用 App Inventor2 中的 CheckBox 和 TextBox 中的值构建 TinyDB?
【发布时间】:2015-06-02 18:35:33
【问题描述】:

我正在努力学习 App Inventor2。 尽管我对使用 Eclipse 和 Android Studio 进行 Java 编码有点熟悉,并且我知道 App Inventor 的局限性,但我最喜欢图形界面和可视对象,而不是一直用代码开发应用程序。

我在应用程序中有一个如下图所示的屏幕,我需要实现此功能: 一种。用户检查与他们喜欢的图像相关的“复选框”。 湾。用户输入一些与此图像相关的标识(id1,id2)。 C。单击“保存”按钮将此值(复选框、id1、id2)存储到 TinyDB。 d。点击“重置”按钮清除存储在 TinyDB 中的信息(复选框、id1、id2)。

我知道 TinyDB 只能存储文本。我试图制作一个带有标签作为名为“idList”的列表的 TinyDB,并用“checkBox”、“id1”、“id2”中的值填充它,但没有成功。我相信我正在检查天气,“复选框”发生了变化或类似的事情。

有人可以按照这个逻辑为我指出正确的方向,或者如果我错了,可以为我指出更好的方向吗?

提前感谢大家的回答。

【问题讨论】:

    标签: android image list checkbox app-inventor


    【解决方案1】:

    在按钮单击事件中,您需要一些逻辑来找出哪个复选框已被选中,类似于这样(伪代码)

    if     checkbox1.checked then store the text 1, 
    elseif checkbox2.checked then store the text 2, 
    etc.
    

    TinyDB 中,您可以存储一个列表,其中包含该逻辑的结果以及来自文本框的文本,如下所示

    您还必须再次读取来自TinyDB 的值。通常你在Screen.Initialize 事件中这样做,例如:

    如果您不喜欢高级积木,您也可以使用一些常规积木...

    另见

    【讨论】:

    • 你好@Taifun,很高兴再次在这里见到你!你的答案很紧张,很容易学习和学习。我将尝试在我的应用程序中实现这些块并回发任何问题。不过需要问一下,是否可以在另一个屏幕(Screen1)上更改“ImageSprite”,这与此屏幕(Screen2)中 CheckBox 中的选择有关?意思是,当单击“checkbox1”时,第二个屏幕上的 imageSprite1 会加载 image1?必须作为应用初始化时的设置。
    • 是的,只需将图像名称存储在 TinyDB 并在 Screen2 上再次读取,另请参见 Scott 的 How to pass values from one screen to another screen
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多