Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android MIT AppInventor:以每个组件为目标_Android_Button_Properties_Block_App Inventor - Fatal编程技术网

Android MIT AppInventor:以每个组件为目标

Android MIT AppInventor:以每个组件为目标,android,button,properties,block,app-inventor,Android,Button,Properties,Block,App Inventor,我想修改每个按钮的属性,但我不能将它们全部作为目标。我一次只能瞄准一个目标。我尝试使用Any Component菜单的Any Button块,但仍然只能针对一个按钮。我无法手动(逐块)执行修改,因为我使用了许多按钮(确切地说是254个)。我试着把每个按钮都放在一个列表中,但拖动254个块(一个接一个)花费了太多时间。任何解决方案?有效更改组件(相同类型的组件,即按钮)的多个属性的一个好方法是为每个循环使用一个,然后将其与Any-button.property合并 要使用for each循环,必须

我想修改每个按钮的属性,但我不能将它们全部作为目标。我一次只能瞄准一个目标。我尝试使用Any Component菜单的Any Button块,但仍然只能针对一个按钮。我无法手动(逐块)执行修改,因为我使用了许多按钮(确切地说是254个)。我试着把每个按钮都放在一个列表中,但拖动254个块(一个接一个)花费了太多时间。任何解决方案?

有效更改组件(相同类型的组件,即按钮)的多个属性的一个好方法是为每个循环使用一个,然后将其与Any-button.property合并

要使用for each循环,必须首先填充组件列表,但是,按钮不能直接添加到列表中(结构限制…),但不能!有一种方法可以绕过此操作,即首先创建一个名为buttonsList(或您喜欢的任何名称,清楚地标记)的空列表,然后在屏幕初始化时使用所有按钮填充列表(要自动化此过程,必须至少手动完成一次

使用所有按钮填充列表后,您将能够使用for-each循环更改所有属性

  • 启动全局按钮列表:创建空列表
  • 当screen1.0初始化时
    • 是否将项目添加到“按钮列表”
      • 在此处添加所有按钮
        • 按钮1
        • 按钮2
        • 按钮#…等
  • 触发事件时
    • 对于全局“按钮列表”中的每个-“按钮/组件名称”
      • 设置anyButton.property(例如,文本?)
        • 组件名称-“按钮/组件名称”
          • 至“财产变更”
          • (即:文本-你好,世界!)
  • 这应该可以完成工作。不过,就像@Taifun提到的那样……按钮太多了,如果appInventor真的擅长一件事的话,那就是崩溃,因此如果可能的话,重新构造应用程序将是一件好事。

    只需更改按钮的“水平排列”(抱歉,只是手动更改) 然后使用按钮的属性(颜色、文本颜色…)更改“任意组件” 并以循环中的数字为目标(针对每个数字)


    你可能想重新设计你的应用程序。你真的需要屏幕上同时有254个按钮吗?你将在app Inventor的限制下工作,可能无法再构建你的应用程序。试着只使用几个按钮并重复使用它们,或者改为使用列表选择器。@Taifun是的,我需要254个按钮同时在同一屏幕上屏幕。我不能使用列表选择器,因为我也需要显示图像…我尝试了一些替代方法,但这是我能找到的实现目标的唯一方法。谢谢你的建议。我的可能是替代方法。是的,这是一个明确的答案。这完美地描述了我第一次尝试的内容,但是,我放弃了将按钮填充到列表,因为拖动那些块需要一些时间。在这种情况下,你的答案不是一个有效的解决方案,所以我不能接受。@Taifun提到,他为AppInventor提供了一个缩略图列表视图示例。对于界面设计有类似问题的人来说,这种方法可能是一种永久性的解决方案。而且它是一种空间和内存效率的解决方案我也是一个很好的例子。谢谢!